Appendix A: A Brief Overview of GoF Design Patterns
We all have unique thought processes. So, in the early days of software development, engineers faced a common problem. There was no standard to instruct them on how to design their applications. Each team followed its own style, and when a new member joined an existing team, understanding the architecture was a gigantic task. Senior or experienced members of the team had to explain to the new joiner about the advantages of the existing architecture and why alternative designs were not considered.
The experienced developer also knew how to reduce future efforts by simply reusing the concepts already in place. Design patterns address this issue and provide a common platform for all developers. You ...