Sta*_*arx 24 php model-view-controller 3-tier n-tier-architecture
在MVC和3层或N层架构中开发网站有什么区别?
哪一个更好?什么是利弊?
Lot*_*tes 13
它们几乎相同,但在3层中,顶层(表示)从不直接与底层通信(数据持久性).
在模型 - 视图 - 控制器中,从理论上讲,模型应该"通知"View已经更改,以便View可以更新.但是,这在大多数Web应用程序中通常不是问题,因为它们是无状态的.我不确定任何着名的PHP MVC架构是否具有直接与模型通信的视图,反之亦然,但如果不是,那么说它们实际上是3层是正确的.
维基百科说:
乍一看,三层可能看起来类似于MVC(模型视图控制器)概念; 然而,在拓扑学上它们是不同的.三层体系结构中的基本规则是客户端层永远不会直接与数据层通信; 在三层模型中,所有通信都必须通过中间件层.从概念上讲,三层架构是线性的.但是,MVC架构是三角形的:View向Controller发送更新,Controller更新Model,View直接从Model更新.
来源:维基百科:多层架构