Atilla Mah. 493 Sk. No:13 D:1 35270, Konak - İZMİR / TÜRKİYƏ

Clean Code: Oxunaqlı və saxlanıla bilən kod yazma sənəti

Yazılım geliştirme

Clean Code təmiz kod yazmaq

Robert C. Martin-in (Uncle Bob) eyni adlı kitabı ilə məşhurlaşan Clean Code anlayışı proqram təminatı inkişafının ən əsas intizamlarından biridir. Təmiz kod yalnız işləyən deyil, eyni zamanda oxunaqlı, anlaşıla bilən və saxlanması asan olan koddur. Bir proqramçının vaxtının 70%-ni kod oxumağa sərf etdiyini nəzərə alsaq, oxunaqlılığın əhəmiyyəti daha da aydın olur.

Təmiz kod nədir?

Təmiz kod, başqa bir inkişaf etdiricinin (və ya gələcəkdəki özünüzün) minimum səylə başa düşə biləcəyi koddur. Bjarne Stroustrup-un ifadəsi ilə: «Təmiz kod tək bir şeyi yaxşı edən koddur.»

Qayda: «Kodu həmişə onu saxlayacaq şəxsin ünvanınızı bilən zorakı bir psixopat olduğunu fərz edərək yazın.» — John F. Woods

Bu zarafat kodun oxunaqlılığının nə qədər kritik olduğunu mükəmməl şəkildə ümumiləşdirir.

Clean Code prinsipləri

1. Mənalı adlandırma

Dəyişən, funksiya və sinif adları məqsədi aydın şəkildə ifadə etməlidir. Adlandırma kodun öz-özünü sənədləşdirməsinin ilk addımıdır.

# PIS – Mənasız adlar
d = 7
lst = get_data()
def calc(a, b): …

# YAXSI – Mənalı adlar
days_until_deadline = 7
active_customers = get_active_customers()
def calculate_monthly_revenue(sales, expenses): …

2. Tək məsuliyyət prinsipi (SRP)

Hər funksiya və sinif yalnız tək bir iş görməlidir. Əgər funksiya birdən çox iş görürsə, parçalara bölünməlidir.

3. Kiçik funksiyalar

Funksiyalar qısa olmalıdır. Bir funksiya ideal olaraq 20 sətri keçməməlidir. Uzun funksiyalar anlaşılması və test edilməsi çətin strukturlardır.

4. DRY (Don’t Repeat Yourself)

Eyni məntiqi birdən çox yerdə təkrarlamayın. Təkrarlanan kod xəta düzəltmə və yeniləmə xərclərini qat-qat artırır.

5. KISS (Keep It Simple, Stupid)

Sadə həllər həmişə mürəkkəb həllərdən üstündür. Lazımsız abstraksiyalardan və həddindən artıq mühəndislikdən qaçının.

SOLID prinsipləri

  1. Single Responsibility: Hər sinfin tək bir dəyişiklik səbəbi olmalıdır
  2. Open/Closed: Genişlənməyə açıq, dəyişikliyə qapalı
  3. Liskov Substitution: Alt siniflər üst siniflərin yerini tuta bilməlidir
  4. Interface Segregation: Böyük interfeyslər əvəzinə kiçik, fokuslanmış interfeyslər
  5. Dependency Inversion: Konkret siniflərdən deyil, abstraksiyalardan asılı olun

TAGUM-da kod keyfiyyəti mədəniyyəti

TAGUM komandasında Clean Code prinsipləri gündəlik inkişaf praktikalarının ayrılmaz hissəsidir. PratikEsnaf.Net, DeskTRixir.ai layihələrimizdə məcburi kod nəzərdən keçirmə prosesi, SonarQube ilə avtomatik kod keyfiyyəti analizi və müntəzəm refactoring sprintləri tətbiq edirik.

Nəticə

Təmiz kod yazmaq intizam və davamlı praktika tələb edir. Qısa müddətdə daha çox vaxt alır kimi görünsə də, uzun müddətdə inkişaf sürətini artırır, xəta nisbətini azaldır və komanda məhsuldarlığını yüksəldir.

→ Keyfiyyətli, davamlı proqram təminatı həlləri üçün TAGUM-un ekspert komandası ilə işləyin

Leave a Reply

Your email address will not be published. Required fields are marked *