Dasturlash tili standartlariga rioya qilish kodingiz sifatini biroz oshiradi. Kod sifatini yanada oshirish uchun keyingi qadam – "toza kod" yozish.
Ko'pchiligimiz Clean Code kitobi haqida (juda ko'p) eshitganmiz. "Engineering excellence" haqida gap ketganida "Clean Code" haqida ham aytib ketmasam bo'lmaydi.
Kitobda yozilgan hamma narsalarni bitta postga jamlash – imkonsiz. Quyida o'sha kitobda yozilgan amal qilish oson, lekin ta'siri katta maslahatlarni keltirib o'taman:
• O'zgaruvchi, funksiya va boshqalarga ma'noli nom tanlash.
• Kodni sodda, o'qishga oson yozish. "Aqlli" koddan tushunarli kodni afzal ko'rish.
• Funksiyalarni iloji boricha faqatgina bitta logikali amalni bajaradigan darajada kichikroq qilish.
• Bir necha marta takrorlangan logikalarni alohida funksiyaga o'tkazish.
• Kodingiz nima ish qilayotganini kod orqali tushuntirish, kommentlar orqali emas.
• Kodni tez-tez refaktor qilish. Yaxshilasa bo'ladigan joylarni topib, to'g'rilash.
Misol #1
❌ Noaniq nom:
fetchData()
✅ Aniq va tushunarli nom:
fetchEmailsInTrashFolder()
Misol #2
❌ O'qish qiyin ("bitwise"ni hamma ham bilmasligi mumkin):
val numbers = listOf(1, 2, 3, 4, 5, 6)
val evens = numbers.filter {
it and 1 == 0
}
✅ O'qish oson ("modulo"ni ko'pchilik biladi):
val numbers = listOf(1, 2, 3, 4, 5, 6)
val evens = numbers.filter {
it % 2 == 0
}
Misol #3
❌ Tushunarsiz kodni komment bilan tushuntirish:
d = 100.0 # Distance in meters
t = 15.0 # time in seconds
print(get_speed(d, t))
✅ Tushunarli kodga komment shart emas:
distance_meters = 100.0
time_seconds = 15.0
print(calculate_speed(distance_meters, time_seconds))
Agar siz ham "Clean Code" haqida eshitgan, asosiy joylarini internetdan qarab chiqqan, lekin hali to'liq o'qib chiqmagan bo'lsangiz, o'qishni maslahat beraman. Shaxsan o'zim bu kitobni 1 yil oldin o'qidim. Kitobni sotib olib, ish stolimga qo'yib qo'ydim va har kunlik ish vaqtimning eng ohirgi 30 daqiqasini shu kitobni o'qishga sarfladim. O'rganganlarimni keyingi kun ishda qo'llashga harakat qildim :)
#engineeringexcellence
@muhammadjohns



