Tasarım Kalıpları (Design Patterns)

Barış Özaydın
Bir Geliştiricinin Maceraları
1 min readMar 7, 2012

Böyle bir yazı dizisi yazmaya karar verdim. Bakalım ne kadar başarılı olacağım.

Tasarım kalıpları nedir, ne değildir bile başlayayım o zaman hemen.

Tasarım kalıpları, tasarım desenleri aslında yazılım tasarımında sıklıkla karşımıza çıkan sorunlara esnek ve başarılı çözümler getiren bir takım kalıplardır. Birçok kişi tarafından denenmiş ve kabul görmüş kalıplardır.

Tasarım kalıplarına geçmeden önce sınıflar üzerindeki modellemede uygulamamız gereken prensiplere de göz atmak gerek.

Tasarım Prensipleri

Single Responsibility:Her bir modülün tek bir sorumluluğunun olması gerektiğini ve ilerde bu modül değişecekse bunun tek bir nedenden kaynaklandığının bilinmesini temel alır.

Open / Closed Prenciple: Kısaca tasarladığınız yapı geliştirmeye açık değişikliklere kapalı olmalıdır.

Liskov’s substitution Prenciple: Türeyen sınıf base sınıf ile tamamen yer değiştirebilir olmalıdır. Yani base class’ı kullanarak türeyen sınıflara işlem yaptırabilmeliyiz de diyebiliriz.

Interface Segregation Principle: Sınıflar sadece ihtiyacı olan interface’lerden türemelidir. Bir interface birden fazla işe yönelik değil küçük parçacıklar halinde işlere yönelik olmalıdır.

Dependency Inversion Prenciple: Yüksek seviye sınıflar direkt olarak düşük seviye sınıfları kullanmazlar, bunun yerine arada bir interface olur, yüksek seviye sınıflar interface’i kullanarak düşük seviye sınıfa erişirler. böylece düşük seviye sınıfta değişiklik olduğu zaman yüksek seviye sınıflar etkilenmezler.

Kısaca tasarım prensiplerinden bahsettik. Bundan sonra da eğer yapabilirsem tasarım kalıplarını teker teker hem incelemiş olacağım hem de kendim de bilmediğim kalıpları öğrenmiş olacağım. umuyorum :)

--

--