3 php model-view-controller defensive-programming zend-framework
我相当肯定我的教授会问我为什么选择将MVC用于我的网络应用程序.
说实话,我是MVC的新手.我读到了它,我正在使用它构建一个博客应用程序,我认为以这种方式处理问题是非常合乎逻辑的.
但为什么?O_O我画一个空白.如何建立一个N层应用程序更适合?
嗯,基本上:在使用级别而不是物理级别上分离关注点.
MVC将用户界面交互分为三个不同的角色.
使用MVC,您将表示(V,C)与域逻辑(M)分开,并且还将UI行为(C)与UI显示(V)分开.这比将所有三个问题混合成一个更加可维护,并且它还促进了重用和测试.它可以让您更好地解决复杂性问题.
这不仅适用于Web应用程序.它适用于具有域逻辑和UI的任何应用程序.话虽如此,我不会说MVC是最适合 Web应用程序的模式.如果您想要做的只是在网络上放一个联系表格,那么一页一页的脚本就足够了.如果你只有一堆静态页面,MVC也是过度的.所以与任何模式一样,它取决于您想要解决的问题.
至于n层,"经典"MVC并没有预见到它在网络上的使用.随着在浏览器和远程服务器上的控制器中发生UI的呈现,Web上的MVC始终也是多层体系结构,因此开始时usecase和physical之间的区别.MVC并不关心它发生的地方.
另见:
| 归档时间: |
|
| 查看次数: |
868 次 |
| 最近记录: |