Middle
Hangi geliştirme ilkelerini biliyorsunuz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Ana ilkeler:
- DRY (Kendini Tekrarlama): Tekrarlayan mantığı fonksiyonlara, sınıflara veya modüllere çıkararak kod tekrarını önlemek.
- KISS (Basit Tut, Aptal): Kodun sadeliği ve anlaşılırlığına ulaşmaya çalışmak.
- YAGNI (İhtiyacın Yok): Anlık ihtiyaç olmayan fonksiyonellikleri eklememek.
- SOLID: Nesne yönelimli tasarımın beş prensibi:
- Tek Sorumluluk Prensibi: Bir sınıfın sadece bir değişiklik nedeni olmalı.
- Açık/Kapalı Prensibi: Sınıflar genişletilmeye açık, değişikliğe kapalı olmalı.
- Liskov Yerine Koyma Prensibi: Alt sınıf nesneleri, temel sınıf nesneleri yerine kullanılabilir olmalı ve programın doğruluğu bozulmamalı.
- Arayüz Ayrımı Prensibi: Müşteriler, kullanmadıkları arayüzlere bağlı olmamalı.
- Bağımlılıkların Tersine Çevrilmesi Prensibi: Üst modüller alt modüllere bağlı olmamalı, ikisi de soyutlamalara bağlı olmalı. Soyutlamalar detaylara bağlı olmamalı, detaylar soyutlamalara bağlı olmalı.
Diğerleri:
- Kod Standartları: Belirlenmiş kodlama standartlarına uyum (örneğin, PHP için PSR-1, PSR-12) kod okunabilirliği ve tutarlılığı için.
- Test Odaklı Geliştirme (TDD): Çalışan kodu yazmadan önce testleri yazmak.
- Alan Odaklı Tasarım (DDD): Geliştirme sırasında alan üzerine odaklanmak, iş mantığını yansıtan bir model oluşturmak.
- Temiz Mimari/Hexagonal Mimari: İş mantığını altyapı detaylarından ayırmaya yönelik mimari yaklaşımlar.