设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式乃一个程序员的内功修炼。
有很多关于设计模式的书籍,比如轻松易读的《大话设计模式》、最为经典的GoF的《设计模式》、国人的经典原创《道法自然》等,网上关于设计模式的资料也非常多,且内容全面。但关于设计模式的书籍和网上的资料使用C++代码来举例实现的并不多,例如GoF的《设计模式》最为经典、理论最为全面,但是该书籍示例使用java编写,且中文版本翻译的不太好而英文版本对大多数人都读不下去;《大话设计模式》较为轻松易读,但是示例程序使用C#编写。
本人通过对设计模式的学习、理解,以及在平时和工作过程中的使用,结合设计模式的理论知识和C++示例程序,总结了C++实现的设计模式。希望C++开发人员可以通过学习该文章更好的理解设计模式。
在后续的文章介绍了设计模式的总原则和六大原则及其解释,详细介绍了24种设计模式的概念、使用、示例程序等。每种设计模式首先通过一个示例问题,引出通过设计模式很好的解决该问题(提供解决示例问题的代码),在后面介绍设计模式的使用及何时使用该设计模式。
该文章系列,目录如下
所有章节的所有示例代码,可在此路径进行下载查看:https://github.com/huashuolin/DesignModel