这是我参与【第四届青训营】笔记创作活动的第31天。
什么是设计模式?
设计模式是软件设计中所遇到的常见问题的解决方案模型。设计模式更多的是解决问题的思想和方法,是无数前人历史经验的总结,每种设计模式在每种语言中的具体实现方式不尽相同,与特定的语言无关,更不是现成的代码,毕竟代码实现是用来更好地理解各种设计模式内在思想和方法的辅助。
设计模式的类型
设计模式可以分为三大类:创建型、结构型、行为型。
1.创建型模式
创建型模式提供了创建对象的方式方法,我们可以根据实际情况使用合适的方式方法来创建对象,以此来达到减少设计问题,减小设计复杂度的目的。
2.结构型模式
结构型模式关注于如何处理类与对象之间的关系,让它们共同组成一个更大的结构,并以此来提高系统的复用性和健壮性,达到简化系统的目的。
3.行为型模式
行为型模式负责对象间的高效通信和职责划分,用于识别对象之间常见的交互模式并加以实现,以此来清晰地划分类与对象的职责,增加交互的灵活性。
同时,在这三大类的设计模式中还可以分出更多的小类,比如:创建型模式下的工厂模式、单例模式;结构型模式下的外观模式、代理模式;行为型模式下的策略模式、迭代器模式。如下图:
当然,以上的定义比较抽象和晦涩,对于我们初学者来说只能是留下一个关于设计模式的印象,想要真正了解这些设计模式的作用和价值,学习这些设计模式的思想和方法,还是需要不断实践去加以理解。