【问题标题】:Symfony business logicSymfony 业务逻辑
【发布时间】:2012-02-09 17:15:16
【问题描述】:

在 symfony 中,我看到一些编码人员将业务逻辑放入操作(即控制器)中,而一些编码人员将其放入模型中(Doctrine)。业务逻辑应该属于哪里,在控制器还是模型中?如果我不使用 Doctrine,它只是纯文本文件怎么办?

【问题讨论】:

    标签: php model-view-controller frameworks symfony1


    【解决方案1】:

    将业务逻辑放在控制器中是一种不好的做法,模型就是它的家。

    如果你没有 Doctrine,你仍然可以拥有自己的实体、模型类(你应该)。您的文件可以被抽象化,然后将它们的业务逻辑放在它们自己的类中,而不是放在控制器中。

    这都是关于 MVC 的,而 M 完全取决于你。

    【讨论】:

      【解决方案2】:

      标准的 Symfony 和 MVC 约定会让控制器只做必要的事情来接收从视图或视图传递的信息。在大多数情况下,对该信息的任何数据处理都应位于您的模型和库类中,可以在其中设置它们以实现最佳重用或结构化代码组织。

      Symfony 最大的优势之一是,任何其他优秀的 Symfony 开发人员都可以快速将代码编入任何其他优秀 Symfony 开发人员的项目中,这主要是因为 MVC 约定和 Symfony 以良好的编码强加于您的开发的组织标准。

      【讨论】:

        【解决方案3】:

        巴士。逻辑不应该存在于控制器中。控制器应该很好地控制或指导他们所在的应用程序中的控制流。

        巴士。逻辑应该存在于域级对象中,它们可以在各种应用程序之间共享。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-01-27
          • 1970-01-01
          • 2010-12-18
          • 1970-01-01
          • 2013-03-04
          • 2010-12-24
          • 1970-01-01
          • 2011-12-03
          相关资源
          最近更新 更多