DEV Community

Mustafa  Çam
Mustafa Çam

Posted on

SOLID

SOLID, Robert C. Martin tarafından önerilen ve nesne yönelimli programlama ve tasarımın beş temel ilkesini ifade eden bir akronimdir¹. Bu ilkeler, yazılımın bakımını ve genişletilmesini kolaylaştırmak, kod kokularını önlemek, kodu yeniden düzenlemek ve Agile veya Uyarlanabilir yazılım geliştirmek için uygulamaları belirler¹. SOLID ilkeleri şunlardır:

  1. Single-Responsibility Principle (Tek Sorumluluk İlkesi):

    • Bir sınıfın yalnızca bir nedenle değişmesi gerektiğini, yani bir sınıfın yalnızca bir işi olması gerektiğini belirtir¹.
  2. Open-Closed Principle (Açık-Kapalı İlkesi):

    • Yazılım varlıklarının (sınıflar, modüller, fonksiyonlar vb.) genişletilmeye açık ancak değişikliğe kapalı olması gerektiğini ifade eder¹.
  3. Liskov Substitution Principle (Liskov'un Yerine Geçme İlkesi):

    • Alt sınıfların, üst sınıfların yerine geçebilmesi gerektiğini, yani bir sınıfın alt sınıfları, üst sınıfın tüm özelliklerini korumalı ve onun yerine geçebilmelidir¹.
  4. Interface Segregation Principle (Arayüz Ayırma İlkesi):

    • Bir sınıfın, kullanmadığı arayüzleri uygulamaya zorlanmamalı olduğunu belirtir. Büyük, şişkin arayüzler yerine daha küçük ve özelleşmiş arayüzler kullanılmalıdır¹.
  5. Dependency Inversion Principle (Bağımlılıkların Ters Çevrilmesi İlkesi):

    • Üst seviye modüllerin alt seviye modüllere doğrudan bağımlı olmaması gerektiğini, her ikisinin de soyutlamalara bağımlı olması gerektiğini ifade eder¹.

Bu ilkeler, yazılımın esnek, genişletilebilir ve bakımı kolay olmasını sağlamak için tasarlanmıştır. SOLID ilkelerini takip etmek, daha temiz kod yazmanıza ve büyük yazılım projelerinde daha kolay işbirliği yapmanıza yardımcı olabilir.

Kaynak: Bing ile konuşma, 17.05.2024
(1) SOLID: The First 5 Principles of Object Oriented Design. https://www.digitalocean.com/community/conceptual-articles/s-o-l-i-d-the-first-five-principles-of-object-oriented-design.
(2) The SOLID Principles of Object-Oriented Programming Explained in Plain .... https://www.freecodecamp.org/news/solid-principles-explained-in-plain-english/.
(3) A Solid Guide to SOLID Principles | Baeldung. https://www.baeldung.com/solid-principles.

Top comments (0)