8 Şubat 2015 Pazar

Yazılım Tasarım Teknikleri – SOLID

SOLID(Single responsibility, Open-closed, Liskov substitution, Interface segregation ve Dependency inversion) yazılım tasarım prensipleri için kullanılan bir kısaltmadır. Yazılım yaparken SOLID uygulandığı taktirde bakımı ve geliştirilmesi kolay yazılım sistemleri oluşturmak mümkündür. En verimli hali test güdümlü yazılım ile uygulanır.
S - SRP, Single Responsibility Principle(Tek sorumluluk): Her yazılım biriminin (sınıf, nesne, metot) tek bir sorumluluğu olmalıdır.
O - OCP, Open/Closed Principle: Yazılım birimleri geliştirilmeye(extends) açık, değişikliğe(modify) kapalı olmalıdır.
L - LSP,    Liskov’s Substitution Principle: Alt sınıflardan oluşturulan nesneler üst sınıfların nesneleriyle yer değiştirdiklerinde aynı davranışı göstermek zorundadırlar.(Örneğin, bir dikdörtgen sınıfından türeyen kare alt sınıfının alan hesaplaması dikdörtgen sınıfının alan hesaplaması ile aynı davranışı göstermelidir.)
I - ISP, Interface Segregation Principle: Herşeyi ihtiva eden interface sınıflar yerine belli bir işlemi yapan interface sınıflar oluşturulmalıdır. Oluşturulan interfaceler ortak özelliklerine göre bölümlenmelidir.
D - DIP, Dependency Inversion Principle: Üst seviye sınıflar alt seviye sınıflara tersten bağımlı olmamalıdır. Bir nesne direkt olarak kullanılmamalı, ortak özellikleri soyutlanarak kullanılmalıdır ki nesnenin tüm özellikleri, sonradan o nesneyi kullanan nesnelerin özellikleri çakışabilir. (Örneğin; Kumanda->Televizyon kumandası<Ses ve görüntü açma>,Radyo kumandası<Ses açma> gibi)
Yararlanılan Kaynaklar:

Hiç yorum yok :

Yorum Gönder