DEV Community

Cover image for Solid Prensipleri
Fehmi Velioglu
Fehmi Velioglu

Posted on

Solid Prensipleri

Kod yazmayı öğrendikten sonra bir önemli konuda nasıl kod yazmak olduğudur. Her çalışan kod o kodu yazabileceğimiz anlamına gelmiyor. Kod yazmanın da prensipleri bulunuyor.

Yazdığımız kodun okunabilirliği, zamanla yapılacak değişikliklere kolay entegre olması ve sonradan eklenen kodun projenin yapısını en az etkileyecek şekilde olması gerekir.

Solid prensiplerinin 5 maddesi de yazılımcıların bu nedenlerden dolayı uyması gereken prensiplerdir.

S => Single-Responsibility Principle(Tek Sorumluluk Prensibi)

Her sınıfın veya metodun tek bir sorumluluğu olmalıdır. Kodun okunabilirliğini sağlar ve işlem karmaşasının önüne geçer.

O => Open-Closed Principle(Açık Kapalı Prensibi)

Sınıflar değişikliğe kapalı ancak gelişime açık olmalıdır. Komplike bir projede bir sınıfta yapılan değişikliğin neleri etkileyebileceği öngörülmesi zordur.

L => Liskov Substitution Principle ( Liskov’un Yerine geçme Prensibi)

Türetilen sınıflar, türeyen sınıfların tüm özelliklerini kullanmak zorundadır. Eğer kullanmaz ise gereksiz kod yoğunluğu olur.

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

Sorumlulukların hepsini tek bir arayüze toplamak yerine daha özelleştirilmiş birden fazla arayüz oluşturmalıyız.

D => Dependency Inversion Principle ( Bağımlılıkların Terslenmesi Prensibi)

Katmanlı mimarilerde üst seviye modüller alt seviyedeki modüllere doğrudan bağımlı olmamalıdır.

Alt sınıflarda yapılan değişiklikler üst sınıfları etkilememelidir.

Image of Timescale

Timescale – the developer's data platform for modern apps, built on PostgreSQL

Timescale Cloud is PostgreSQL optimized for speed, scale, and performance. Over 3 million IoT, AI, crypto, and dev tool apps are powered by Timescale. Try it free today! No credit card required.

Try free

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Immerse yourself in a wealth of knowledge with this piece, supported by the inclusive DEV Community—every developer, no matter where they are in their journey, is invited to contribute to our collective wisdom.

A simple “thank you” goes a long way—express your gratitude below in the comments!

Gathering insights enriches our journey on DEV and fortifies our community ties. Did you find this article valuable? Taking a moment to thank the author can have a significant impact.

Okay