玩框架SOLID原则

时间:2013-08-24 13:18:32

标签: scala architecture playframework

我正在从C#/ .Net / ASP.NET MVC背景学习Scala / Play2.1.3。

我想知道为什么默认情况下没有依赖注入支持?

在Play示例中,所有数据访问方法在域模型类中都是静态的。他们使用工厂而不是注射。如果我想模拟一些数据访问方法进行单元测试怎么办?

那里没有现成的高级ORM。实际上他们不鼓励我使用ORM!关于SQL DB我不敢相信我必须再次编写连接,我不记得上次编写连接子句时。这不是退步吗?

我已经学会使用在Play框架(完全)IMO中没有观察到的SOLID主体。

我错了你应该考虑使用其他框架吗?

1 个答案:

答案 0 :(得分:1)

你是对的,大部分样本都没有使用依赖注入。但是从2.1版本开始,可以注入控制器及其依赖项。

对于依赖注入,请检查doc以及how to unit test(最后一段)。

但是由于存在许多静态调用,您最终可能会在某处获得一些静态引用,并且您将无法对代码进行单元测试。

但我认为Play是一个很棒的框架,团队正在越来越多地模块化框架,因此它在SOLID原则方面会更好,更好。