服务层和实体在Yii 2

Ars*_*nov 5 php spring yii2

我已经学习Yii2框架已有两周了。其核心概念之一是“胖模型,瘦控制器”。阅读高级应用程序模板的源代码后,我发现由于这个概念,几乎所有逻辑都包含在模型中。

好吧,如果我没有使用Spring MVC的经验,那毫无疑问,服务层似乎是一种将应用程序逻辑与实际数据分离的自然方法。

所以问题是:在使用Yii2构建的应用程序中实现这种类似企业的结构是否是一个好习惯?更具体地说:是否值得将Yii的模型分解为实体,DTO和服务?

先感谢您!

PS:这个问题似乎有点过于抽象或过于主观,但是对Yii2的经验很少,我想知道Yii2中是否有任何架构功能可能会使上述实现在代码维护方面不是最佳选择,性能等等?

aer*_*zov 0

使用其他功能而不是内置功能对于每个框架来说并不是一个好的做法。

IMO,模型部分是 yii2 的杀手级功能,因此如果您不需要脚手架(代码生成),您可以使用任何其他没有模型部分的 php 框架(zf2symfony2、微框架)。

因此,您可以使用自己的模型架构,而不会出现任何性能滞后,但您需要编写更多代码来完成任务,并且您的模型将很难被使用 yii2 的其他人支持,因此我建议使用另一个框架没有模型层。