官术网_书友最值得收藏!

Chapter 2. GoF Design Patterns

There are a handful of things that make a great software developer. Knowledge and usage of design patterns is one of them. Design patterns empower developers to communicate using well-known names for various software interactions. Whether someone is a PHP, Python, C#, Ruby, or any other language developer, design patterns provide language agnostic solutions for frequently occurring software problems.

The concept of design patterns emerged in 1994 as part of the Elements of Reusable Object-Oriented Software book. Detailing 23 different design patterns, the book was written by four authors Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. The authors are often referred to as the Gang of Four (GoF), and the presented design patterns are sometimes referred to as GoF design patterns. In Today, more than two decades later, designing software that is extensible, reusable, maintainable, and adaptable is near to impossible without embracing design patterns as part of implementation.

There are three types of design patterns which we will cover in this chapter:

  • Creational
  • Structural
  • Behavioral

Throughout this chapter we will not go deep into the theory of each of them, as that alone is an entire book's worth of material. Moving forward, we will focus more on simple PHP implementation examples for each of the patterns, just so we get a more visual sense of things.

主站蜘蛛池模板: 堆龙德庆县| 丘北县| 区。| 固安县| 云梦县| 西乡县| 汪清县| 佳木斯市| 莲花县| 泸州市| 德安县| 潢川县| 海阳市| 镇赉县| 崇信县| 疏勒县| 荣昌县| 开封县| 聊城市| 信丰县| 疏附县| 道孚县| 施秉县| 潢川县| 霍城县| 建阳市| 凌源市| 綦江县| 双辽市| 高邮市| 五家渠市| 邹平县| 易门县| 云霄县| 彰化市| 杭锦旗| 类乌齐县| 鄂温| 张家港市| 监利县| 石棉县|