32 puan yazan kciter1 2023-12-15 | 9 yorum | WhatsApp'ta paylaş
  • Güzellik nedir?
    • Güzellik, insanın hissettiği bir değerdir
    • Şaşkınlık, yenilik, istikrar, rahatlık, sadelik gibi duygular vermesi
    • Şaşırtıcı olan ve doğal olan diye ayrılabilir
    • Güzelliği (fark edişi) hissedebilmek için belli ölçüde temel bilgi gerekir
    • Güzellik hayatta kalmak içindir. Anlaşılamayan bir şey görüldüğünde rahatsızlık hissedilir
  • Güzel kodun tanımı
    • Kod tek başına çalışmadığı için, ne kadar güzel olursa o kadar iyidir
    • İdeal olarak, okurken takılan tek bir noktanın bile olmadığı kod
    • Doğal görünen kod iyidir
  • Güzel kodu oluşturan dört unsur
    • sosyal, güvenilir, doğrusal, bildirimsel
      • Sosyal ve güvenilir taraf istikrarı hedefler
      • Doğrusal ve bildirimsel taraf ise estetiği hedefler
    • Sosyal kod
      • Çevredeki tüm koşulları dikkate alan kod
      • Geleneklere, kurallara ve misyona uymak
      • Dilin toplumsallığına benzer
    • Güvenilir kod
      • Güvenerek kullanılabilecek kod
      • Güvenilemiyorsa doğrudan kontrol edilmesi gereken koda dönüşür
      • Saf fonksiyonlar, idempotency ve side effect gibi unsurların dikkate alınması
      • Hiç side effect olmaması mümkün olmadığından, bunların belge ya da istisnalarla bildirilebilmesi
    • Doğrusal kod
      • Kodu okurken yukarıdan aşağıya yalnızca bir kez okunmasının yeterli olması
      • Doğrusal olduğunda, nörobilim açısından çalışma belleğinin işlemesi kolaylaşır
    • Bildirimsel kod
      • Kodun ne yaptığını açık ve doğru biçimde göstermesi
      • Uygun adlar vermek iyidir
      • Nörobilim açısından kısa süreli belleğin işlemesi kolaylaşır
  • Pratikte
    • Güzel kod tek seferde bir çırpıda ortaya çıkan bir şey değildir
    • Kusursuz derecede güzel kod yaygın değildir
    • Bu yüzden kademeli iyileştirme ve kod süslemesi kavramlarına ihtiyaç vardır
    • Kademeli iyileştirme
      • Refactoring yapmak
      • Kontrol ve iyileştirmeyi tekrarlayarak kaliteyi sürekli %70~80 düzeyinde tutmak
      • Kontrol ve iyileştirme ne zaman yapılmalı?
        • Kod sahipliği belirsizleştiğinde
          • Yazılmış koda dair bilgi bulanıklaştığında
        • Bir kötü koku hissedildiğinde
          • Koda bakarken rahatsızlık duyulduğunda
    • Kod süslemesi
      • Kodu güzel görünecek şekilde düzenlemek
      • En yaygın olarak test, code review, dokümantasyon ve yorumlar kullanılır
      • Test
        • Kodu daha güvenilir hâle getirir
        • Çalışmayı garanti eder ve testin kendisi de doküman olabilir
      • Code review
        • Doğrulama yoluyla kodu daha güvenilir hâle getirir
        • Kod sahipliğini yaydığı için kodun sosyal yönünü de güçlendirebilir
        • Koşulsuz code review bazen darboğaza dönüşebilir
      • Dokümantasyon
        • Kodu daha iyi anlamayı sağlar
        • Dokümantasyonun gerektiği an, başka bir geliştiricinin o koda ilişkin bağlamı, tasarımı ve kuralları bilmesi gerektiği andır
        • UML gibi araçlar kullanılırsa daha da iyi olur
      • Yorumlar
        • Kaçınılmaz olarak karmaşıklaşan kod bölümleri, dokümandan çok yorumlarla açıklanmalıdır
  • Kod kalitesi önemlidir, ancak güzel kod başarıyı mutlaka garanti etmez
    • Hatta tasarım ya da iş süreçlerini daha fazla dikkate almak gerekebilir
    • Kod kalitesi, ürün kalitesini mutlaka garanti etmez

9 yorum

 
elects 2023-12-19

ahahahaha

 
yangeok 2023-12-19

Toplumsal açıdan iyi bir kod da önemli olacak gibi duruyor haha

 
mhj5730 2023-12-18

Bence iyi derlenip toparlanmış, güzel bir yazı. Ekip içinde kod kalitesi nedeniyle sık sık sorun yaşanıyorsa, bunu okuyup bir araya gelerek tartışmak da iyi olabilir.

 
ryuheechul 2023-12-16

Kafa karıştırıcı olabilecek bir konu ama akıcı bir şekilde okunuyor. Teşekkürler!

 
acsdskim2023 2023-12-15

Gerçekten de kademeli iyileştirme önemli. Sonuçta hiçbir şeyde ilk denemede kusursuz sonuca ulaşılamaz.

 
saalome 2023-12-16

Kendi yazdığı kodda estetik bir güzellik hissetme hobisi sadece kişisel bir bakış açısı olarak kalmalı. Para alan bir profesyonel şirket koduna sanatsal bir bakışla yaklaşmasın ve genç geliştiricilere garip zihniyetler aşılayan bir kıdemli de lütfen olmasın. Ya da geliştiriciliği bırakıp resim yapsınlar; ne bu sanat edebiyatı...

 
pastelcolors 2023-12-18

"Güzellik" kelimesine yanlış takılmışsınız.

 
aiana 2023-12-18

Sadece başlığı okuyan genç

 
gcback 2023-12-17

Heh, biraz fazla abartmışsınız.