.Net Gang of Four Tasarım Desenleri

1994 yılında, Erich Gamma, Richard Helm, Ralph Johnson ve John Vlissides yazılım geliştirme deki tasarım desenlerini açıklamak için “Design Patterns: Elements of Reusable Object-Oriented Software” adını taşıyan bir kitap yayınladılar. Bu dört yazar Gang of Four olarak tanınmaktadırlar. Türkçeye “Dörtlü Çete” olarak çevrilebilir.

GOF Tasarım Desenleri

Gang of Four programcıları tarafından tanımlanan 23 tasarım deseni bulunmaktadır. Bu tasarım desenleri tasarım problemlerine yönelik olarak 3 gruba ayrılmaktadır.

A – Creational Design Patterns (Yaratılışsal Tasarım Desenleri)
Bu desenler obje yaratma işlemleri ile uğraşırlar. Bu şekilde uygulama sisteminden ayrıştırılmaya çalışılır. Bu, verilen senaryo veya iş için hangi objelerin oluşturulmaya ihtiyaç duyulduğunun karar verilmesini sağlar.

  1. Factory Method: Türetilmiş sınıfların örnekleri oluşturulur.
  2. Abstract Factory: Farklı gruplara ait çeşitli sınıfların örnekleri oluşturulur.
  3. Builder: Kendi temsilinden bir nesne inşaatı oluşturur.
  4. Prototip: Yinelenen bir nesne oluşturulur ya da nesnenin kopyası oluşturulur.
  5. Singleton: Bir sınıfın yalnızca bir örneğe sahip olduğu desendir.

B – Structural Design Patterns (Yapısal Tasarım Desenleri)
Bu desenler nesne yapılarının birleşimiyle oluşur. Kalıtım kavramı arayüzleri oluşturmak için kullanılır ve yeni işlevler elde etmek için çeşitli yollar tanımlanır.

  1. Adapter: Farklı sınıfların arabirimleriyle eşleştirme.
  2. Bridge: Uygulanması ile bir nesnenin soyut parçalara ayrılır.
  3. Composite: Basit ve bileşik nesnelerin bir ağaç yapısıdır.
  4. Decorator: Dinamik olarak nesnelere sorumluluk eklenmektedir.
  5. Facade: Bütün bir karmaşık sistemi temsil eden tek bir sınıftan oluşur.
  6. Flyweight: Benzer nesnelerle paylaşabildiği kadar veri paylaşarak bellek kullanımını asgariye çekmektedir.
  7. Proxy: Başka bir nesneye başvuran vekil bir nesne sağlar.

C – Behavioral Design Patterns (Davranışsal Tasarım Desenleri)
Bu tasarım desenleri, nesneler arasındaki iletişim süreci, ilişkilerin yönetimi ve nesneler arasındaki sorumluluklar ile çalışır.

  1. Chain of Responsibility
  2. Command
  3. Interpreter
  4. Iterator
  5. Mediator
  6. Memento
  7. Observer
  8. State
  9. Strategy
  10. Visitor
  11. Template Method

Kaynak:

http://www.dotnet-tricks.com/Tutorial/designpatterns/NTEH250513-Gang-of-Four-(GOF)-Design-Patterns-in-.Net-.html

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak.