Her Framework Bir Dile Dönüşür

Geliştiriciler genellikle framework özelliklerine odaklanır.

Yönlendirme, durum yönetimi ve derleme araçlarına bakarlar. Bu kısımlar önemlidir. Ancak özellikler, uzun ömürlü bir framework'ün en önemli parçası değildir.

Bir framework nihayetinde bir dile dönüşür.

Bu bir programlama dili değildir. Fikirlerin, kalıpların ve niyetin dilidir. Bu dil, kodun kendisinden daha değerli hale gelir.

Çoğu framework, teknik sorunlara çözüm olarak başlar. İsteklerin nasıl yönlendirileceğini veya kodun nasıl organize edileceğini çözerler. Bu aşamada framework, sadece bir özellikler listesidir.

Sonra, bir şeyler değişir.

Aracı kullanan insan sayısı arttıkça, kalıplar ortaya çıkar. İnsanlar aynı çözümleri ve kuralları kullanmaya başlar. Framework size nasıl düşüneceğinizi öğretmeye başlar.

Sadece API'leri öğrenmezsiniz. Felsefeyi öğrenirsiniz. Varsayımları öğrenirsiniz.

Bunu deneyimli geliştiricilerde görebilirsiniz. Onları sözdizimlerinden değil, zihinsel modellerinden tanırsınız. Onlar ekosistemlerinin dilini konuşurlar.

Sözdizimi değişir. Versiyonlar değişir. Özellikler değişir. Ancak temelindeki dil kalır.

Ortak bir kelime dağarcığı karmaşıklığı azaltır. Tek bir terim tüm bir kavramı açıklayabilir. Tek bir kural tüm bir iş akışını açıklayabilir. Geliştiriciler fikirleri bu şekilde hızlıca iletirler.

Bu, dokümantasyonu yazma şeklinizi değiştirir.

İyi dokümantasyon kelime dağarcığını ve kavramları öğretir. Kullanıcıların sistemin nasıl düşündüğünü anlamasına yardımcı olur. Kötü dokümantasyon ise sadece özellikleri listeler. Biri anlamaya, diğeri ise ezberlemeye yol açar.

Gerçek projeler bu dili şekillendirir. Bir dili izole bir şekilde tasarlayamazsınız. Gerçek kullanımdan ve gerçek sürtünmelerden doğar. Faydalı fikirler kalır, kötü fikirler ise gider.

Bu her alanda olur. İş dünyası, müzik ve mimari; hepsi diller geliştirir. Ortak kelime dağarcığı iş birliğini kolaylaştırır.

Yazılım geliştirirken, bir sonraki adımda hangi özelliği ekleyeceğinizi sormayı bırakın. Bunun yerine şu soruları sorun:

  • Bu dile uyuyor mu?
  • Bu felsefeyi güçlendiriyor mu?
  • Bu, sistemi anlamayı kolaylaştırıyor mu?

Özellikler araçları oluşturur. Diller ise ekosistemleri. En başarılı framework'ler sadece yazılım sunmazlar. Fikirleri ifade etmenin bir yolunu sunarlar.

Kaynak: https://dev.to/stinklewinks/every-framework-eventually-becomes-a-language-1b4h