【发布时间】:2013-09-15 14:30:32
【问题描述】:
我已经确定了下面要在我的应用程序中实现的层。据我所知,企业应用程序更喜欢多层架构。
- 表示层
- 业务层
- 数据访问层
- 服务层
我选择了 Symfony2 作为应用程序中使用的框架。 Symfony2 内置了 MVC 架构。上面的层存在如下。
- 表示层 => 控制器和视图
- 业务层、服务层 => 模型
- 数据访问层 => 也是模型,但使用了 Doctrine。
模型由业务层、数据访问层、服务层组成。见下图borrowed from Martin Fowler's book, Patterns of Enterprise Application Architecture。
我的问题是,
有没有办法将模型解耦成单独的业务层、数据访问层、服务层?如何在 PHP 中实现多层架构?我应该使用其他一些框架(如果它只支持分层架构)?
更新
以下链接很有帮助
How should a model be structured in MVC?
How to build n-layered web architecture with PHP?
What is difference of developing a website in MVC and 3-Tier or N-tier architecture?
MVC application. How does mult-tier architecture fit in?
【问题讨论】:
标签: php symfony model-view-controller architecture soa