Clean Code Nedir? Nasıl Yazılır?

Günümüzde oldukça popüler olan yazılım sektöründe bilinmesi ihtiyaç duyulan en mühim konuların başlangıcında Clean Code yaklaşımı geliyor. Okunabilir kodun ilk adımı olan clean code yaklaşımını yakından inceleyelim.

Clean Code Nedir?

Clean Code kısaca temiz kodun en popüler tanımı, anlaşılması ve değiştirilmesi kolay koddur. Temel amacı, kolay fakat verimli, okunabilir, kontrol edilebilir ve ek olarak yeni ihtiyaçlara uyarlanabilir kodların yazılmasıdır.

İlginizi çekebilir: Python mı? Java mı? İlk Hangi Yazılım Dili Öğrenilmeli?

Temiz Kod Yazmak Niçin Önemlidir?

clean-code

Kullanıcılar içinde oldukça popüler olan bir şirket vardı. Belirli bir süre sonrasında yazılımda güncellemelerden kaynaklı hata sayıları çoğaldı. Bu durum kullananların da dikkati çekti ve uygulamayı bırakacak kadar hayal kırıklığına uğradılar. Sonunda şirket batkı etti. Bu şirkette mühendis olan bir kişiye bu durumun sebebi sorulunca şu cevabı verdi. “Ürünü piyasaya süratli bir halde sunduk ve bu durumdan kaynaklı kodda karmaşıklıklar meydana geldi. Daha çok özellik eklendikçe kod daha da kötüleşti ve artık onu yönetemez hale geldik.”

İşte bu vaka fena kod yazmanın sonucudur ve kuruluşunuzu çökertebilir.

Peki, fena kod yazmanın maliyeti yalnız batkı mıdır?

Kod karmaşası oluşmaya devam ettikçe, geliştiricilerin uygulamaya bakım yapma durumu zorlaşıyor. Bundan dolayı geliştiriciler daha yavaş ve dikkatli bir halde kodlamaya devam ediyor. Böylece geliştiricinin verimi düşüyor. Verimlilikte düşüşü gören yönetim, kargaşalık üstünde çalışmak için daha çok kaynak ekler ve bu da sonunda işleri daha fena hale getirir.

{Nasıl} Temiz Kod Yazılır?

Anlamlı İsimler Kullanın

Değişkenler, fonksiyonlar, sınıflar, argümanlar, diziler şeklinde birçok syntax (sözdizimi) isimi yazılmaktadır. Kodlarınızda anlamlı adlar kullanmayı alışkanlık haline getirmelisiniz. Bu durum üç amacı yerine getirmektedir. Bunlar;

  • Kodun ne yaptığını,
  • Kodda ne işe yaradığını,
  • Kodun {nasıl} kullanıldığını,

Örnek vermek gerekirse, Bir programcı, “a” harfini kullanıcı sayısı olarak tutmuş olabilir fakat bu doğru bir yaklaşım değildir. Sonuçta başka bir programcı “a” harfinin kullanıcı sayısı bulunduğunu anlamaya bilir. Bunun önüne geçmek için usersCount şeklinde anlamlı bir isimlendirme kullanmalısınız. 

Kendi Standardınızı Yakalayın

clean-code-nasıl-yazılır

Kendinize ilişik bir biçim yada standart bulun. Bu bilhassa birden fazla proje ile çalışınca üretkenliğinizi arttıracaktır. Bir şeyleri güncellerken yada yeni bir özellik eklerken daha süratli olmanızı elde edecektir.

Tek Mesuliyet İlkesini Uygulayın

Nedir bu tek mesuliyet ilkesi? Solid prensiplerinden de olan bu kavrama bakılırsa her şeyin (class, fonksiyon, yöntem…) yalnızca bir işlevi vardır. Bu işlerinizi temiz, anlaşılması kolay ve daha esnek hale getirecektir.

Kodunuzu Tekrardan Düzenleyin (Refactor)

Refactor, mevcut kod içinde kod gövdesini tekrardan yapılandırmak, dış davranışı değiştirmeden içyapısını değiştirebilmek için kullanılan tekniktir. Tekrardan düzenleme, ileride olacak geliştirmelerin maliyetini düşürür.

Dezenformasyondan Kaçının

Belirli bir anlam ifade eden kelimelere dikkat edin. Türü hakikaten bir sıralama olmadıkça, bir hesap grubuna ”hesapListesi” olarak atıfta bulunmayın. Kelimelerin belirli bir anlamı vardır ve yanlış sonuçlar doğrabilir.

Kod Tekrarına Düşmeyin

Kod tekrarı, yazılımdaki tüm kötülüklerin kökü olabilir. Tekrarlanan kod, mantıkta bir değişim olduğunda yada sisteme bir güncelleme vardığında birden oldukça yerde değişikliğe gitmeniz anlama gelir. Bir görevi parçalara ayırın ve %90’ının tekrardan kullanılabilir olduğundan güvenilir olun.

Dilinizin Kurallarını Bilin

Her dilin kendine ilişik yazım kuralları vardır. Kimi dilde boşluklara dikkat edilirken, kimi dilde süslü paranteze dikkat edilir. Dilinize ilişik isimlendirme stillerini öğrenin. Mesela, Java’da CamelCase (Kelimeler bitişik ve ilk harfleri büyük) stilinde yazılırken, Python’da snake_case (Kelimeler arası alt çizgiyle ayrılır) stili kullanılır.

Gereksiz Yorumlardan Uzak Durun

Yorumlar, insanların sonrasında anlamalarına ve öteki programcıların aynı proje üstüne çalışmasına destek sağlar. Koddaki yorumlar, kodunuzun açıklayıcı olmadığı anlamına gelebilir. Bu sizi fena geliştirici durumuna düşürebilir. Amerikalı bir yazılım geliştiricisi olan Jeff Atwood’un yorum yazmakla ilgili meşhur bir sözü vardır. Bu söz;

“Kodunuzu daima yorumlar yokmuş şeklinde yazmalısınız. Bu sizi, en kolay, en mütevazı ve kendini ifade eden şekilde kod yazmaya zorlar.”

Jeff Atwood

Söyleniş Edilebilir İsimler Kullanın

Bir adı söyleniş edemiyorsanız, o adı kullanmayın. Yanlış anlaşılmalar ve istenmeyen durumlar meydana gelebilir.

Tasarım Kalıplarına Egemen Olun

Tasarım kalıpları oldukça geniş bir mevzudur. Tasarım kalıplarını incelerseniz geliştiricilerin karşılaştıkları sorunların çözümlerini bulabilirsiniz. Bu çözümler uzun uğraşlar sonucu sayısız geliştirici tarafınca denenmiş ve onaylanmış kalıplardır. Tasarım kalıplarının amacı, tekerleği baştan buluş etmekten kaçınmanızı sağlar. Şu demek oluyor ki mevcud çözümleri bilip uygun olan yerde kullanmanızı sağlar.

Netice olarak temiz kod yazmak, bugünden oldukça geleceğe yatırımdır. Yazılımcıların ustalaşmak için bilmesi ihtiyaç duyulan tekniklerden biridir.

Clean Code Nedir? Nasıl Yazılır?

Yorum yapın