Design Patterns

Taylan Can Hardal
2 min readMar 17, 2022

Firstly what are these patterns? These patterns are not algorithm or code blogs. Design patterns are solutions to common problems software developers face during software development. These patterns were found by trial and error after long processes. After that developers gave names to these problems.

The design pattern phrase originated almost 30 years ago. Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides, known as Gang of Four (GOF), published a book called Design Patterns — Elements of Reusable Object-Oriented Software and introduced the concept of design patterns in software for the first time.

There are only 23 design patterns in the book but now there are many more. Also everybody can create a new design pattern but another purpose about design patterns is to be unifying. So you need design patterns to speak the common language with other software developers.

Patterns are divided into 3 in this book :

1) Creational Patterns

This design pattern provides alternative solutions to creating objects from classes by hiding the object creation logic instead of creating objects directly using the new operator. This provides flexibility and convenience in creating whatever object is needed in the program flow.

  • Singleton Pattern
  • Builder Pattern
  • Prototype Pattern
  • Factory Pattern
  • Abstract Factory Pattern

2) Structural Patterns

This design pattern provides solutions for arranging the structure of the relationship between objects.

  • Proxy Pattern
  • Adapter Pattern
  • Facade Pattern
  • Filter Pattern
  • Bridge Pattern
  • Flyweight Pattern
  • Composite Pattern
  • Decorator Pattern

3) Behavioral Patterns

This design pattern provides solutions for behavior between objects at runtime.

  • Chain of Responsibility Pattern
  • Command Pattern
  • Interpreter Pattern
  • Iterator Pattern
  • Mediator Pattern
  • Memento Pattern
  • Observer Pattern
  • Null Object Pattern
  • Strategy Pattern
  • State Pattern
  • Visitor Pattern

Summerly the Design Patterns like that. See you again in my next story.

bolŞans…

--

--

Taylan Can Hardal

Software Engineer @Turkcell. Savin’ the Earth. Somewhere