Clean Code Nedir? - suckerman7/JavaRestAPI-Demo GitHub Wiki

CLEAN CODE NEDİR?

Clean Code, namı diğer Temiz Kod, ilk olarak Robert C. Martin’in yazdığı “Clean Code: A Handbook of Agile Software Craftsmanship” adlı kitapta detaylıca bahsedilmiş bir kavramdır. Sanılanın aksine Clean Code katı kurallar içermez. Temiz kod yazmanın ilkeleri, kod yazmanın insanlar tarafından kolayca anlaşılması ve herkesin kolayca değiştirebilmesi adına yazılmıştır. Kodun temiz olması oldukça önemlidir çünkü temiz kod anlaşılır koddur. Ve anlaşılabilir kod, hem kodu geliştiren hem de başka geliştiriciler tarafından kolayca anlaşılabilir. Tüm kodların açık ve mantıklı bir şekilde yazılması gerekir. Yazılan kodun her bölümü arasındaki bağlantılar açık ve net olmalıdır. Böylece her geliştirici tarafından koddaki işlevler, yöntemler ve değişkenlerin görevi kolayca anlaşılır.

CLEAN CODE’UN AVANTAJLARI:

Clean Code’u kullanmak, kullanıcılara birtakım avantajlar sağlar:

  • Eğer projede bir değişiklik istenirse, gerekli olan değişiklikler hızlıca güncellenebilir.
  • Projede bir hatayla karşılaşılırsa, bahsedilen hatalar kolayca tespit edilip düzeltilebilir.
  • Clean Code’un bakımı hiçbir sorun çıkartmaz ve yöntemler kolayca öngörülür.
  • Clean Code sayesinde iyi belgelenmiş API’ler bulunur.
  • Eski kodla çalışırken oluşabilecek sorunlar önlenir ve minimum çabayla kod yeniden düzenlenir.
  • Clean Code; okunması kolay, güvenli ve tamamen işlevseldir. Ayrıca maliyet ve zaman tasarrufu sağlar.

CLEAN CODE YAZMAK NEDEN ÖNEMLİ?

İster Frontend ister Backend geliştirme ile uğraşın, isterseniz Javascript ve CSS gibi programlama dilleri kullanın; hepsindeki en önemli amacınız, temiz kod yazmaktır. Böylece kodun kolayca anlaşılmasının yanı sıra kodunuzu geliştirirken yeni kod eklemenizi sağlar. Geliştiriciler, genellikle kod yazmaktan çok kodu okuyup anlamakta zaman harcar. Ellerinde bulunan mevcut kodu gözden geçirmek yerine kodu baştan tekrar yazmayı tercih ettikleri için geliştirmede büyük derecede zaman kaybı yaşanır. Eğer yazılan kod temiz ve anlaşılır bir şekilde yazılırsa ilerleyen süreçte büyük oranda zaman ve maliyet tasarrufu sağlar. Bu yüzden her geliştiricinin önem vermesi gereken şey, yazdıkları kodla büyük oranda ilgilenmesi ve mümkün oldukça anlaşılır hale getirmesidir.

CLEAN CODE İLKE VE DEĞERLERİ:

Yukarıda Robert C. Martin’in yazdığı kitabın Clean Code kavramından detaylı bir şekilde bahsettiğini anlatmıştık. Bu kitapla birlikte Dustin Boswell’in yazdığı “The Art of Readable Code” adlı kitap ise bu kavramı daha metinsel bir biçimde anlatır. Ama zaman geçtikçe Clean Code anlayışı daha geniş bir açıdan bakılmaya başlanmıştır. Clean Code süreci için genellikle şu söz söylenir: “Önce düşün, sonra kodlamaya başla!” Elbette bununla birlikte Clean Code’un ilke ve değerlerine giriş yapabiliriz. Eğer bunları göz atmayıp geçersek zaman içinde ekleyeceğimiz yeni özelliklerin maliyeti büyük miktarda artar.

Clean Code yazarken bize yol gösterecek temel ilkeler şunlardır:

  1. Basit ama geliştirebilir kod yazmak
  2. Kod yazarken gereksiz tekrarlardan kaçınmak
  3. Kod geliştirirken gerek olmayan kodları silmek
  4. Kod yazarken okunabilir olmasına dikkat etmek

Ve tabi ki Clean Code ilkelerinin yanı sıra bu yaklaşımın ayrıca dört temel değeri de vardır:

  1. Geliştirme: Clean Code, ihtiyaçlara göre geliştirilebilir ve uyarlanabilir. Ayrıca koşullara kolayca uyum sağlamalıdır.
  2. Doğruluk: Bu değerin önemi, işlevlerin doğru yürütülmesi, sınıfların ve yöntemlerin doğru kullanılıp benimsenmesidir.
  3. Verimlilik: Eğer yazılan kodun okunması ve değiştirilmesi kolay olursa geliştirme süresi kısalır ve verimliliği artar. Bu değer ise yazılım geliştirmedeki çaba ve maliyetleri ele alır.
  4. Sürekli İyileştirme: Son olarak bu değer de projelerde ve kod satırlarında hangi iyileştirmelerin yapılması gerektiği üzerinde durur.

CLEAN CODE NASIL YAZILIR?

Clean Code yazarken dikkat etmemiz gereken 4 kural vardır:

1. Kuralları adlandırın

Clean Code yazarken muhakkak her yazılımcının izleği anlayabilmesi için kurallar oluşturmak ve bunları not almak şart. Kısacası bir Clean Code el kitabı oluşturmak gerekiyor.

Burada dikkat edilmesi gereken, herkes memnun edebilmek için tek bir yaklaşıma yanaşmamaktır. Herkesin kendi sistemini bulması gerektiği için tüm geliştiriciler bir araya gelmeli ve herkesin anlayabileceği kurallar oluşturulmalıdır.

Örnek olarak tek karakterli değişkenler kullanmayın ve değişkenleri katiyen kısaltmayın. Ve ayrıca kurallarınızda gerektiğince tutarlı olmaya çalışın.

2. İşlevleri basitleştirin

Sonraki aşama, işlevleri küçük ve anlaşılır bir seviyeye indirgemektir. Ayrıca bu işlevlerin amacını açıklayan bir ismin de verilmesi gerekir.

Bunun için yapmanız gereken; işlevleri kısa bir adla özetlemek, gerektiğinde bir işlevi birden fazla işleve ayırmak, işlevleri farklı görevlere ayırıp aynı görevde kullanmamak ve kullanılan bağımsız değişken sayısını sıfırlamaktır.

3. Yorum satırını dikkatlice oluşturun

Kod yazarken yanına eklediğimiz yorumun asıl amacı, kodun ne yaptığını açıklamaktan ziyade kodun neden oluşturulduğunu açıklamaktır. Clean Code için önemli olan şeylerden biri açıkça tanımlanmış bir yorum satırıdır.

Ama eğer kural ve işlevler düzgünce hazırlandıysa yoruma gerek kalmayabilir. Ayrıca her kod satırı için yorum yazmak bile zorunlu değildir. Eğer gerekecek bir durum olursa bunları önceden tahmin edebilmek çok önemlidir. Aksi takdirde gereksiz yorumlar zaman kaybına yol açabilir.

Bunun için önemli olan şey; bir davranışı açıklarken yorum kullanmamak ve yapılan yorumların doğruluğunu kontrol edip mümkün oldukça güncel tutmaktır.

4. Test etmeyi unutmayın

Clean Code için önemli olan son şey ise yazılan kodu test etmektir. Kodu test etmek önemlidir çünkü kodun gelişmesinde büyük rol oynar.

Burada yapılması gereken ise aynı anda birden fazla kavramı değerlendirmemek, eski kodları test etmemek ve testleri basit ve tekrarlanabilir bir formata getirmektir.

REFERANSLAR:

https://medium.com/architectural-patterns/clean-code-temiz-kod-nedir-754fc7ccd5b8

https://coderspace.io/sozluk/clean-code