Dav*_*rks 1 php orm doctrine coding-style
我们在团队中使用PHP中的ORM,我在两个单独的项目中注意到,尽管我们已经详细讨论了良好的MVC设计,但ORM似乎允许人们从View中进行数据库查询分层并创建难以维护的代码.
我倾向于认为ORM太容易在程序员不考虑的掩护下进行查询.通过将ORM对象返回到视图层,程序员实际上是将数据库连接泄漏到不应该拥有它的层.
我在这里正确地考虑ORM吗?如果是这样,为什么它如此受欢迎?如果我没有正确思考,我应该如何解决这些问题?
我会说你没有正确地思考它.ORM本身并不会促进不良行为,至少不会影响您的体验.
ORM是一个工具,就像任何其他框架,api或其他任何东西一样,你可以正确使用它.
听起来更像问题是团队中的开发人员对MVC模式没有清楚的了解.我首先要解决这个问题.
我认为这是MVC模式的一个常见问题,开发人员倾向于将视图和控制器用于他们不应该做的事情.原因可能很多,但每当你使用这样的东西时,我都会认为这个问题通常都是从这个想法开始的:
"这是一个如此简单的小东西,我只会在这里做到这一点,没有必要在那里做到这一点."
基本上,当尝试解耦设计和业务逻辑时,总会出现这样的情况,即实现某个实际属于表示层业务层的部分更容易.这绝不意味着开发人员不好,但可能会显示缺乏经验或懒惰.我知道我已经多次犯了这个确切的事情,比如开发Android时(从不专业但是:)).
如何尝试找出一些样本案例,它使用了一些你已经注意到的错误做法,并且有一些编码 - 道场,你作为一个团队使得代码很好并且正确实现,如果你有时间,那就显示拥有他们所属的东西的实际好处.我强烈建议不要使用实际的代码,除非你自己编写代码,否则负责代码的开发人员可以在其他开发人员面前被破坏.但这显然取决于贵公司的文化,以及开发人员是否对此类事情感兴趣并开放.我个人很想在我的工作场所做类似的事情.