Bu repo, Clean Code (Robert C. Martin) ve Effective Java (Joshua Bloch) kitaplarından öğrendiklerimi kendi örneklerim ve kendi yorumlarımla pekiştirmek için oluşturduğum bir kişisel katalogdur. Her konu başlığı, teoriyi ezberlemek değil kod örnekleriyle içselleştirmek amacıyla hazırlanıyor.
Kaynak olarak şu kitaplardan besleniyorum ama buradaki içerikle paralel gitmiyorum daha çok kendi yorumlarım :) :
- Clean Code — Robert C. Martin
- Effective Java — Joshua Bloch
- Design Patterns: Elements of Reusable Object-Oriented Software — Gang of Four (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides)
Amaç, bu prensipleri sadece okumak değil; günlük iş hayatımda (Spring Boot / Java backend geliştirme) karşılaştığım gerçek senaryolara benzer örneklerle neden ve ne zaman kullanılması gerektiğini netleştirmek.
Her prensip için önce ihlal eden kötü bir örnek, ardından düzeltilmiş hali bulunuyor.
solid/srp— Single Responsibility Principlesolid/ocp— Open/Closed Principlesolid/lsp— Liskov Substitution Principlesolid/isp— Interface Segregation Principlesolid/dip— Dependency Inversion Principle
Klasik tasarım kalıplarının sade Java örnekleriyle uygulanması.
designpatterns/creational/**designpatterns/behavioral/**designpatterns/structural/**
- SOLID prensipleri
- Design Patterns (devam ediyor)
- Clean Code temel prensipleri (naming, functions, comments)
- Code Smells kataloğu
- Anemic vs Rich Domain Model karşılaştırması
- Connascence örnekleri