Design Pattern is a summary of the predecessors' experience in code development, and a series of routines to solve specific problems. It is not a grammatical regulation, but a set of solutions to improve code reusability, maintainability, readability, robustness, and security.
In 1995, GoF (Gang of Four, Gang of Four) co-published the book "Design Patterns: The Foundation of Reusable Object-Oriented Software", which included a total of 23 design patterns. Since then, it has established the field of software design patterns. Milestone, known as the "GoF Design Mode."
The essence of these 23 design patterns is the practical application of object-oriented design principles. It is a full understanding of the encapsulation, inheritance, and polymorphism of classes, as well as the association and composition relationships of classes.
Of course, the software design pattern is just a guide. In actual software development, you must choose according to specific needs:
for simple programs, it may be easier to write a simple algorithm than to introduce a certain design pattern;
but for large-scale project development Or framework design, it is obviously better to use design patterns to organize the code.
About this tutorial
Although this tutorial is named "Java Design Pattern", the design pattern is not a patent of Java. It is also applicable to other object-oriented programming languages such as C++, C#, and JavaScript.
Java is a typical object-oriented programming language, so this tutorial uses Java as the basis to explain these 23 design patterns.
Tutorial directory
1. Overview of software design patterns
2. 23 design patterns of GoF
3. Class diagrams in UML and the relationship between class diagrams
4. Principle of opening and closing
5. The Richter Substitution Principle
6. Dependence inversion principle
7. Single responsibility principle
8. Interface isolation principle
9. Dimit's Law
10. The principle of composite reuse
11. The characteristics and classification of the creation model
12. Singleton mode
13. Prototype mode
14. Simple factory pattern
15. Factory method pattern
16. Abstract factory pattern
17. Builder pattern
18. Structural pattern overview
19. Agent pattern
20. Adapter pattern
21. Bridge pattern
22. Decoration pattern
23. Appearance pattern
24. Flyweight pattern
25. Combination pattern
26. Behavioral pattern Overview
27. Template method pattern
28. Strategy pattern
29. Command pattern
30. Chain of responsibility pattern
31. State pattern
32. Observer pattern
33. Intermediary pattern
34. Iterator pattern
35. Visitor pattern
36. Memo pattern
37. Explanation mode
using 38.UMLet the design class diagram
39. experimental applications create schema
40. experimental structural model application
41. application of behavioral patterns experiment