我从C#/ .Net/ASP.NET MVC背景学习Scala/Play2.1.3。玩框架SOLID原则
我想知道为什么默认情况下没有依赖注入支持?
在Play样本中,所有数据访问方法在域模型类中都是静态的。他们使用工厂而不是注射。如果我想模拟一些单元测试的数据访问方法,该怎么办?
那里没有准备使用的高级别ORM。其实他们不鼓励我使用ORM!关于SQL DB,我无法相信我必须再次写入连接,我不记得上次编写连接子句。这不是退步吗?
我学会了使用在Play框架(完全)IMO中未观察到的SOLID主体。
我错了,我应该考虑使用另一个框架?
设置DI并摆脱这些静态控制器方法非常简单。我认为他们不会试图强迫你使用特定的框架来让你自己选择一个框架是很好的。如果你认为它对你的项目更有意义,那么就不要听文档告诉你什么是不鼓励的。 – Kapep
但是,因为我是Play(或其他任何人)的新手,对我来说遵循创作者的指导原则和建议会更好吗? –
当然,你一般应该遵循指导原则。默认设置中的一些内容并不一定是各种情况的最佳解决方案。 DI是一个很好的例子。我试图说的是,寻找文档中推荐的工具和框架的替代方案也是一件好事。 – Kapep