In this post, I am going to talk about Structural Design Patterns : Adapter, Composite, Proxy, FlyWeight, Facade, Bridge, Decorator. You can find the explanations and code examples for each of them below. Before leading in, I want to talk about structural patterns.

Structures are one of the bases of coding. They effect performance, readability and stability directly. That’s why it is important to analyze the processes before starting development : finding best structure and algorithm that is going to be fast, easy to read-write operations, SOLID and flexible for the future. As I mentioned in my previous posts…


Bugün CQRS ‘den bahsedeceğim. Yeni projemizle beraber özellikle Clean Architecture, async ve bunlarla beraber CQRS üzerine yoğunlaşmışken, konuyla ilgili öğrendiklerimi yazıya dökmek istedim.

Bir junior olarak öğreneceğim her yeni kavramda sorduğum ilk soru: “Neden X’e ihtiyacımız var ?” oluyor. “Öncesinde ne kullanılıyordu, X’in eksik kaldığı noktalar nelerdi, projemize neler katacak ya da neleri değiştirecek ?” sorularına cevap bulmadan (bazen kafama yatması uzun sürse bile :))ilerlemiyorum çünkü neyi neden kullanacağımı bilmeden kodlamayı sağlıklı bulmuyorum. Dolayısıyla, CQRS için de, önce bu sorulara cevap vereceğim, daha sonra konuyu detaylandıracağım.

CQRS’ e neden ihtiyacımız olduğuyla başlayalım : uygulama ne kadar kompleks olursa geleneksel…


In my first post I have explained Design Patterns. Today, I am going to continue with Creational Patterns.

Creational Design patterns are using for controlling object creation process or instantiation of a class. We can easily say that Creational Design Patterns are all about the rules and the standards that we want for our class’ and objects’ creation process. We need them because constructors may not be efficient enough all the time : they may be too flexible or too strict for our scenario or they may be expensive to use.

The point of creational patterns can be realized…


This is my first medium post, so I wanted to start with a subject that I recently work hard and enjoy while learning : Design Patterns.

There are a lot of definitions of Design patterns, but I am going to explain it with real life scenarios because as a junior, I find this technique way more effective and catchy for the beginning of new subjects.

In life we always face with some problems to be solved. Most of the time, when we share our negative situations with people, we can see that they have similar problems too. Even our…

Beyza Celep

Mathematical Engineer & Software Developer | www.linkedin.com/in/beyza-celep

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store