Buna değinmeden geçmek olmaz: Temiz kod (Clean Code)

Bu aralar yazılım öğrenme işleriyle meşgulüm. Akın hocanın udemydeki java eğitim videolarını izliyorum. Sağolsun Akın hoca güzel anlatıyor. Java programlama dilini kullanarak yazılım geliştirmeyi anlatıyor. Anlatırken işin şu kod şu işi yapar, özellikleri şunlardır gibisinden şeyleri anlatmakla kalmıyor yapmamamız gerekenleri de anlatıyor.

İşlemciler (operatörler) konusunda öncelik sırasını bilmekle ilgili anlatımı yaparken; 

"öncelik sırasını bilmeyi gerektiren kod yazmak iyi bir uygulama değildir" 

demişti.

Temiz kod, clean code diye bir kavram var. Ben bugün bir projede görev alabilir kodları yazabilirim. Daha sonra bir başkası benim yerime geçip benim yazdığım kodları geliştirebilir veya değiştirebilir. Eğer çoğunluk tarafından kabul gören bir standart gözetmeksizin kod yazarsak işler çorbaya dönebilir.

Ben kafama göre kod yazsam, o kafasına göre kod yazsa ve daha sonra başka birileri kodun başına geçse, ilk önce bizim yazdıklarımızı anlamaya çalışacaktır. Bu durum zaman kaybına, enerji ve motivasyon kaybına yol açar.

Bunun önüne geçmek için mümkün mertebe kodlama yaparken bir standarda bağlı kalmalıyız. Bu standart çoğu yazılımcı için ortaklaşa belirlenmiş yani diğer bir deyişle kabul görmüş olmalı.

Benim canım böyle istedi, yazdım ve çalışıyor. Gerisi beni ilgilendirmez demek yakışmaz. 

Bu konu clean code yani temiz kod olarak bilinmektedir.

Amacı, bütün yazılımcıların koda baktığında  kolayca anlayabileceği şekilde yazılım yazmaktır.

 

Bu konuda yazılmış bir kitaba bakarak en azından ortak kabul görmüş yolu izleyebiliriz.


Youtube de clean code kitabı araması

Youtube de temiz kod araması

Temiz kod kitap özeti


Temiz kod olayı ilk başlarda üzerinde çok fazla durmaya gerek yokmuş gibi görünebiliyor ama çok temel bir şey olduğu için bunu es geçmemek gerekiyor.

Çünkü nasıl öğrenirseniz öyle gidiyorsunuz. Daha yolun başında yazılım işini öğrenirken etik kurallar, standartlar gibi şeyleri de öğrenmek en az yazılım öğrenmek kadar gerekli bence.

Yorumlar