solid

Interface Segregation Principle (Arayüz Ayrımı Prensibi)

Okuma Süresi: 3 dk

Arayüz Ayrımı Prensibinin odak noktası; eğer bir sınıf implement ettiği interface’e ait tüm nesneleri kullanmıyor ya da o interface ilgili sınıf için eksik kalıyor ise ortak metodları içeren bir arayüz oluşturup, farklılaştığı noktalar için ise yeni arayüzler oluşturulmalı ve artık bu yeni interface kullanılmalıdır.

Devamını oku »

Open/Closed Principle (Açık/Kapalı Prensibi)

Okuma Süresi: 2 dk

Yazdığımız kod gelişime açık fakat değişime kapalı olmalıdır. Örneğin yazdığımız bir sınıf içerisindeki metodların gövdesi mümkün mertebe değişmemelidir. Yine sınıf örneğinden devam edecek olursak; yeni bir özellik kolayca eklenebilmelidir. Mevcut kod yeniliklere açık, yani bloklayıcı durumda olmamalıdır. Yeni kod ekleyebilmek için mevcut kodda değişikliğe ihtiyaç duyulmamalıdır.

Devamını oku »

Single Responsibility (Tek Sorumluluk)

Okuma Süresi: 3 dk

Tek Sorumluluk prensibi ile gelecekte yaşanabilecek karmaşaların, geliştirme ve test zorluklarının önüne geçeriz. Bu prensiple odaklanmamız gereken tek bir konu vardır; modüller, sınıflar, metodlar, fonksiyonlar vs. parçalara ayırabildiğimiz her yerde ilgili parçacığa yalnızca bir sorumluluk yüklenmeli ve sadece sorumluluk yüklenilen işi yapması beklenmelidir. Bu sayede elimizde okunabilir, anlaşılabilir, geliştirilebilir ve test edilebilir bir kod/uygulama olacaktır....

Devamını oku »

Dependency Inversion (Bağımlılıkları Tersine Çevirme)

Okuma Süresi: 3 dk

Derinlere dalmadan önce özetle bu prensip ile nesneler içerisinde başka bir nesne oluşturulmamasına özen gösterilmesi ve eğer bir nesneye ihtiyacımız var ise mümkünse dışarıdan alınması gerektiğini kavrıyor olacağız. Bu cümle sonrasındaki tüm yazılanlar bu prensipin ortaya çıkma nedenleri, benimsenmesi halinde bize kazandıracakları ve örnek uygulaması ile ilgili olacak.

Devamını oku »