Python ile Temiz Kod Yazma
Bu yazımızda Python ile temiz kod yazmanın öneminden, nasıl yapılacağından ve hangi kurallara dikkat edilmesi gerektiğinden bahsedeceğiz.


Python ile Temiz Kod Yazma
Python okunabilirliği yüksek olan developer dostu bir dil olarak bilinir. Ancak kodu okunabilir kılan sadece dilin yapısı değil, aynı zamanda developer'ın yazım alışkanlıklarıdır. Her yazılımcının kendine has bir kod yazma alışkanlığı vardır elbet ancak iş kodun formatlanmasına geldiğinde bir takım standartlarımızın olması kaçınılmaz bir durumdur. Yoksa ortalık jungle haline gelirdi. İşte tam bu noktada, ortalığın jungle olmasına engel olmak için temiz kod (clean code) kavramıyla karşılaşıyoruz. Temiz kod prensipleri en yalın haliyle, kodun nasıl daha okunabilir ve sürdürülebir yazılabileceği noktasında bize yardım eden kurallardır. Temiz kod prensiplerine uymak:
- Yazdığımız kodun diğer yazılımcılar tarafından daha kolay anlaşılmasını sağlar
- Kodumuzun daha hızlı ve kolay bir şekilde bakımınının yapılabilmesine olanak tanır
- Kompleks problemlerin üstesinden daha kolay gelebilmemizi sağlar.
- Kodun daha az karmaşık olmasına yardımcı olur ve böylece daha az hata yaparız.
Bu yazımda özellikle Python'da daha temiz bir kod nasıl yazarız, bunu size örnekleriyle açıklayacağım. Clean code prensipleri oldukça fazla olduğundan, burada bunların hepsinin üstünden geçmeyeceğim. Ancak, kolay olan bazı prensipleri sizlerle paylaşacağım. Amacım genel olarak Python'da temiz kod yazmanın önemine vurgu yapmak.
1. Anlamlı İsimlendirme
Değişken ve fonksiyon adları kısa ama anlamlı olmalı, amacını doğrudan yansıtmalıdır. İsimlendirme konusunda yazılımcı arkadaşlarımın çok özgün olduklarına şahit oluyorum. Oldukça komik isimler buluyorlar. Bu bir yere kadar iyi ama fazla abartmamakta fayda var. Ama en önemli problem, çok kısa ve anlamsız isimler kullanmak. Bu durumda kodu yazan dahi sonradan ne yazdığnı hatırlamıyor.
# Kötü örnek x = 10 y = 5 z = x * y # İyi örnek unit_price = 10 quantity = 5 total_price = unit_price * quantity
2. Tek Sorumluluk İlkesi
Fonksiyonlara az iş yaptırın arkadaşlar. Böylece daha kolay fonksiyon yazarsınız ve yazdığınız fonksiyonu da test etmesi de kolay olur. Devasa fonskisyonlar yazmak sizi daha iyi bir yazılımcı yapmaz. Aksine, daha kötü bir yazılımcı yapar. Tek sorumluluk ilkesi, bir fonksiyonun yalnızca bir sorumluluğunun olması gerektiğini belirtir.
# Kötü örnek def process_user(user): validate(user) save_to_db(user) send_email(user) # İyi örnek def validate_user(user): pass def save_user(user): pass def notify_user(user): pass
3. Gereksiz Yorumlardan Kaçının
Kod zaten kendini açıklamalı. Yorumlar yalnızca neden sorusunu cevaplamalı. Koddaki açıklamaları okuyan başka bir yaılımcı sizin o anki ruh halinizi veya duygusal bunalımlarınızı falan anlayabiliyorsa burada bir sıkıntı var demektir ☺️.
# Kötü örnek # Toplama yapılıyor result = a + b # İyi örnek # Kullanıcının toplam sipariş tutarı hesaplanıyor order_total = item_price + tax - discount
4. DRY Prensibi (Kendini Tekrarlama)
Tekrar eden kodlar fonksiyonlaştırılarak soyutlanmalıdır. Buna kuru üzüm, kuru kayısı prensibi diyoruz. Bu çok söz götürür, belki bununla alakalı bir yazı daha yazarım.
# Kötü örnek print("Merhaba Ali") print("Merhaba Ayşe") print("Merhaba Mehmet") # İyi örnek def greet(name): print(f"Merhaba {name}") greet("Ali") greet("Ayşe") greet("Mehmet")
5. PEP 8 Kurallarına Uyun
Python'un resmi stil rehberi olan PEP 8, kodunuzun tutarlılığını sağlar. Arada bu kurallara bakmakta fayda var.
# Kötü örnek def add(x,y): return x+y # İyi örnek def add(x, y): return x + y
6. Fail-Proof Kod Yazın
Kodunuz beklenmeyen durumlarla karşılaştığında nasıl tepki vereceğini bilmelidir. Hataları yakalamak için try-except blokları kullanabilirsiniz. Bu, kodunuzun daha dayanıklı olmasına yardımcı olur. Fail-proof kod en sevdiğim koddur.
# Kötü örnek value = int(input("Bir sayı girin: ")) # İyi örnek try: value = int(input("Bir sayı girin: ")) except ValueError: print("Lütfen geçerli bir sayı girin.")
7. Gereksiz Koddan Kaçının
Kullanılmayan kod satırları ve değişkenler kaldırılmalı, kod mümkün olduğunca sade tutulmalı fellow developer arkadaşlarım ve öğrencilerim. En iyi kodun ne olduğunu bilir misiniz? En iyi kod, hiç yazılmamış koddur.
# Kötü örnek x = 10 # y = 20 if True == True: print("Hello") # İyi örnek x = 10 print("Hello")
Python'da clean code yazmanız sadece daha estetik kodlar üretmeniz demek değildir. Aynı zamanda daha güvenli, bakımı kolay ve yazılımcı dostu (developer-friendly) kodlar yazmak demektir. Unutmayın, kod sadece bilgisayar için yazılmaz, insan için de yazılır. Hadi şimdi gidin ve sevdiğinize şiirsel bir kod yazın. Ama dikkat edin, kodunuz temiz olsun. Daha profesyonel bilgi almak için de benimle iletişime geçebilirsiniz.