为什么MVC不是一种设计模式?

它其实是其它三个经典的设计模式的演变:观察者模式(Observer)(Pub/Sub), 策略模式(Strategy)和组合模式(Composite)。根据MVC在框架中的实现不同可能还会用到工厂模式(Factory)和装饰器(Decorator)模式。MV*、MVVM、MVP都可以看作MVC的现代衍生版,当初提出MVC,是为了实现关注点分离这样一种设计理念,也就是让专业的对象做专业的事情,View就只负责视图相关的东西,Model就只负责描述数据模型,Controller负责总控,各自协作。MVC只是实现这一理念的一种方式而已。因此,不必拘泥于一定要抽象出Model/View/Controller这样的类结构。

具体参考:http://damoqiongqiu.iteye.com/blog/1949256

原文地址:https://www.cnblogs.com/littlewriter/p/6827016.html