Tüm yazılar
Bilim Tarihi17 Aralık 2024

Martin Fowler: Modern Yazılım Mimarisinin En Üretken Yazarı

Refactoring, microservices, NoSQL — bir nesil yazılım mimarisinin teorisini Martin Fowler'in kitap ve blog yazıları belirledi.

Matematik Karavanı 5 dk okuma 5 soru
Atölye ustası — yazılım mimar metaforu

"Yazılım yazmak değil, yazılım yaşatmak"

Martin Fowler (d. 1963, Walsall, İngiltere) — modern yazılım mimarisinin kitap arzı kralı. Refactoring, Microservices, Domain-Driven Design — bir alanı tek başına popülerleştirdi.

Tek cümle: yazılımı uzun ömürlü kılma sanatının baş hocası.

Yol

  • University College London lisans (1986) — elektrik mühendisliği.
  • ICL programcı.
  • Coopers & Lybrand consultancy.
  • ThoughtWorks Chief Scientist (2000-).
  • Bağımsız konferans konuşmacısı, yazar.

"Refactoring" (1999, 2. baskı 2018)

En çok satan yazılım mühendisliği kitaplarından:

  • Kod kalitesini bozmadan yapısını değiştirme.
  • 70+ refactoring kuralı.
  • "Code smell" terimi — kötü kod sinyali.

Etki: IDE'lerin (IntelliJ, VSCode) refactoring komutları Fowler'a borçlu.

"Patterns of Enterprise Application Architecture" (2002)

Gang of Four'un kurumsal versiyonu:

  • Data mapper, repository, unit of work.
  • MVC varyantları.
  • Domain model, service layer.

Java EE, Spring, .NET ekosistemlerinin referans metni.

"Microservices" (2014)

James Lewis ile "Microservices: A Definition" makalesi:

  • Bağımsız deploy.
  • Etrafı domain.
  • Smart endpoints, dumb pipes.
  • Decentralized governance.

Microservices akımının resmi tanımı.

Blog: martinfowler.com

1996'dan beri. Bliki (blog + wiki) tarzı:

  • Mimari kararlar.
  • Test stratejileri.
  • DevOps.
  • Yeni teknoloji eleştirileri.

Modern yazılımcının referans kütüphanesi.

"Domain-Specific Languages" (2010)

DSL'lerin pratik kullanımı. Rebecca Parsons ile.

"Feature Toggle" kavramı

Karmaşık feature'ları aç/kapa olarak yönetme:

  • Development progress.
  • A/B test.
  • Risk azaltma.

Pete Hodgson ile yazdı, modern CI/CD'nin standardı.

XP (Extreme Programming)

1990'ların sonu: Kent Beck, Ward Cunningham, Ron Jeffries ile Agile manifesto öncüleri. Fowler 17 imzacısından biri.

  • TDD: Test-Driven Development.
  • Pair programming.
  • Continuous integration.

CI/CD popülerleştirme

Continuous Integration (Fowler, 2000) makalesi: modern DevOps'un başlangıcı.

Continuous Delivery (Jez Humble, 2010) Fowler'in series'sinde yayınlandı.

ThoughtWorks

Chicago merkezli consulting firma:

  • Fowler Chief Scientist.
  • Çoğu modern yazılım kavramı burada deneyimle test edildi.
  • Akademi-pratik köprüsü.

Tarz

  • Açık dil: jargon az, örnek bol.
  • Bliki yapısı: kavramı tek sayfada özetle.
  • Uzun süreli: 25+ yıl boyunca üretken.
  • Mütevazı: "Ben sadece pratiği yazıyorum" der.

Akademik etki

  • 40.000+ Google Scholar atıf.
  • Bilim makaleleri az ama kitap atfı çok.
  • Yazılım Mühendisliği öğretim kitaplarında standart.

Türkçe yazılım dünyasında

  • Refactoring kitabı Türkçe (Türk yazılım derneklerinde standart).
  • Microservices makalesi Türk teknik blogerlarının çeviri öncüsü.
  • Bilkent, ODTÜ yazılım derslerinde Fowler kavramları.

Felsefe

Fowler'in sık tekrarladığı:

  • "Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
  • "Premature optimization is the root of all evil" (Knuth quoted).
  • "Architecture is the decisions that are hard to change".

"Yazılım sözcüğü"

Fowler'in mesajı: yazılım mimarisi sadece kod değil:

  • İnsan: takım, iletişim.
  • Süreç: nasıl çalışılır.
  • Yapı: modüler tasarım.
  • Değişim: değişebilirlik öncelik.

Genç programcı için ders

Fowler profili:

  • Lisans yeter (doktora değil).
  • Sürekli yazmak kariyeri yapar.
  • Blog + kitap akademik makaleden etkili.
  • Topluluk içinde çalışmak şart.

Kapanış

Martin Fowler, 40 yıl boyunca yazılım mühendisliğinin kavramsal mimarı. Yazdığı her makale, her kitap, modern yazılımın nasıl yapıldığını belirledi. Kod yazmadan dünyayı değiştirmenin örneği.

Türk yazılım mühendisleri için: kavramları açıklayan birisi olmak, kod yazandan da değerli olabilir.

Etiketler

Martin FowlerRefactoringmimariThoughtWorksXP

Kendinizi Test Edin

Cevaplarınız profilinizde istatistik olarak saklanır.

1. En etkili kitabı?

2. Çalıştığı şirket?

3. Microservices tanımı?

4. CI kavramı?

5. Agile Manifesto?