1、优点
-
读源码时看到别人在用,尤其是一些框架大量使用到设计模式,不学看不懂源码为什么这样写,比如Runtime的单例模式.
-
设计模式能让专业人之间交流方便
-
提高代码的易维护
-
设计模式是编程经验的总结,我的理解:即通用的编程应用场景的模式化,套路化(站在软件设计层面思考)。
2、介绍
-
设计模式是程序员在面对同类软件工程设计问题所总结出来的有用的经验,模式【设计,思想】不是代码,而是某类问题的通用解决方案,设计模式(Design pattern)代表了最佳的实践。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。
-
设计模式的本质提高 软件的维护性,通用性和扩展性,并降低软件的复杂度【软件巨兽=》软件工程】。
-
<<设计模式>> 是经典的书,作者是 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides Design(俗称 “四人组 GOF”)
-
设计模式并不局限于某种语言,java,php,c++ 都有设计模式.
3、设计模式分为三种类型,共23种
-
创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。
-
结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。
-
行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略模式、职责链模式(责任链模式)、访问者模式。