有很多程序员每每把框架模式和设计模式稠浊,认为MVC是一种设计模式。实际上它们完备是不同的观点。
框架、设计模式这两个观点总随意马虎被稠浊,实在它们之间还是有差异的。
框架常日是代码重用,而设计模式是设计重用,架构则介于两者之间,部分代码重用,部分设计重用,有时剖析也可重用。
在软件生产中有三种级别的重用:
内部重用,即在同一运用中能公共利用的抽象块;
代码重用,即将通用模块组合成库或工具集,以便在多个运用和领域都能利用;
运用框架的重用,即为专用领域供应通用的或现成的根本构造,以得到最高级别的重用性。
框架与设计模式虽然相似,但却有着根本的不同。设计模式是对在某种环境中反复涌现的问题以及办理该问题的方案的描述,它比框架更抽象;
框架可以用代码表示,也能直接实行或复用,而对模式而言只有实例才能用代码表示;设计模式是比框架更小的元素,一个框架中每每含有一个或多个设计模式,框架总是针对某一特定运用领域,但同一模式却可适用于各种运用。
可以说,框架是软件,而设计模式是软件的知识。
框架模式有哪些?
MVC、MTV、MVP、CBD、ORM等等;
框架有哪些?
C++措辞的QT、MFC、gtk,Java措辞的SSH 、SSI,php措辞的 smarty(MVC模式),python措辞的django(MTV模式)等等
设计模式有哪些?
工厂模式、单例模式、不雅观察者、适配器模式、策略模式等等
简而言之:框架是大聪慧,用来对软件设计进行分工;设计模式是小技巧,对详细问题提出办理方案,以提高代码复用率,降落耦合度。