四川省工程建设信息网站,如何评价网站建设,海南的网站建设公司哪家好,织梦网站密码忘记#xff08;二#xff09;设计模式简介
设计模式的概念来源于建筑学#xff0c;最早由建筑学家克里斯托弗亚历山大#xff08;Christopher Alexander#xff09;在其著作《建筑的模式语言》#xff08;A Pattern Language#xff09;中提出。亚历山大提出了一系列在建筑…二设计模式简介
设计模式的概念来源于建筑学最早由建筑学家克里斯托弗·亚历山大Christopher Alexander在其著作《建筑的模式语言》A Pattern Language中提出。亚历山大提出了一系列在建筑设计中常见的、能够解决特定问题的模式这些模式可以在不同的建筑设计中重复使用。
这一思想后来被引入软件工程领域形成了软件设计模式的概念。设计模式是对在特定上下文中反复出现的问题的解决方案的描述。它们提供了关于如何组织代码的通用方案而不是特定的实现代码。
在软件工程中设计模式的推广和普及主要归功于四位计算机科学家——埃里希·伽玛Erich Gamma、理查德·赫尔姆Richard Helm、拉尔夫·约翰逊Ralph Johnson和约翰·弗利塞德斯John Vlissides他们共同撰写了《设计模式可复用面向对象软件的基础》Design Patterns: Elements of Reusable Object-Oriented Software一书。这本书总结了23种经典的面向对象设计模式被称为“GoF”Gang of Four四人帮设计模式。
软件设计复杂的根本原因是变化软件设计的目标是复用。面向对象编程的设计模式以面向对象编程的原则为的理论基础和指导方针提供了经过验证的解决方案来应对变化和提高代码的复用性可以分为三大类 创建型模式包括单例模式、工厂方法模式、抽象工厂模式、生成器模式、原型模式。这些设计模式关注的是如何创建对象以及如何简化对象创建的复杂性以应对需求变化对具体对象创建实现所带来的影响。 结构型模式包括适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式。这些设计模式关注的是如何管理类与对象之间的组合关系通过减少耦合性和增强灵活性来应对需求变化对对象结构带来的影响。 行为型模式包括职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式。这些设计模式关注的是对象之间的交互和职责分配通过解决对象间职责分配和通信问题来应对需求变化对多个交互对象带来的影响。 参考C设计模式 李建忠