§ 10.2. Dastur arxitekturasining mezonlari
Kichkina, ammo real va o’sib borayotgan loyihani yozish vazifasini o’z zimmamizga olib, dasturning nafaqat yaxshi ishlashi, balki yaxshi tashkil etilganligi qanchalik muhimligini o’zimizning ishimizda ko’rdik. Yaxshi o’ylangan arxitektura faqat yirik loyihalar uchun kerakligiga ishonmang (faqat yirik loyihalar uchun arxitekturaning mavjud bo’lmasligi uning yo’q bo’lib ketishiga olib keladi).
Murakkablik dastur hajmiga qaraganda tezroq o’sadi. Agar siz buni oldindan hisobga olmasangiz, uni boshqarishni to’xtatadigan bir lahza juda tez keladi. To’g’ri arxitektura ko’p kuch, vaqt va pulni tejaydi. Ko’pincha bu sizning loyihangiz saqlanib qoladimi yoki yo’qligini aniqlaydi. Hatto oddiy "taburetkani qurish" bo’lsa ham, boshida uni loyihalash juda foydali.
Yaxshi arxitektura uchun mezonlar
Umuman olganda, "dasturiy ta’minot arxitekturasi" umumiy qabul qilingan atama yo’q. Biroq, amaliyotga kelganda, ko’pchilik ishlab chiquvchilar uchun qaysi kod yaxshi va nima yomon ekanligi allaqachon aniq. Yaxshi arxitektura, birinchi navbatda, dasturni ishlab chiqish va unga xizmat ko’rsatish jarayonini sodda va samaraliroq qiladigan foydali arxitekturadir. Yaxshi arxitekturali dasturni
kengaytirish va o’zgartirish, shuningdek, sinab ko’rish, hatolarni to’g’rilash va tushunish osonroq. Ya’ni, aslida juda oqilona va universal mezonlar ro’yxatini shakllantirish mumkin:
Tizim samaradorligi. Dastur, albatta, eng avvalo, o’z oldiga qo’yilgan vazifalarni hal qilishi va o’z vazifalarini har xil sharoitlarda yaxshi bajarishi kerak. Bunga ishonchlilik, xavfsizlik, ishlash, ortib borayotgan yukni engish qobiliyati (miqyoslilik) va boshqalar kabi xususiyatlar kiradi.
Tizimning moslashuvchanligi. Har qanday dastur vaqt o’tishi bilan o’zgarishi kerak - talablar o’zgaradi, yangilari qo’shiladi. Mavjud funksionallikka o’zgartirishlar kiritish qanchalik tez va qulay bo’lsa, u sabab bo’ladigan muammolar va xatolar qanchalik kam bo’lsa, tizim shunchalik moslashuvchan va raqobatbardosh bo’ladi. Shuning uchun, ishlab chiqish jarayonida, keyinroq uni qanday o’zgartirishingiz kerakligi nuqtai nazaridan olingan natijalarni baholashga harakat qilinadi. O’zingizdan so’rang: "Agar joriy arxitektura qarori noto’g’ri bo’lib chiqsa nima bo’ladi?", "Bu holatda qancha kod o’zgartiriladi?". Tizimning bir qismini o’zgartirish uning boshqa qismlariga ta’sir qilmasligi kerak. Mumkin bo’lgan hollarda, arxitektura qarorlari o’zgaruvchan bo’lishi kerak va me’moriy xatolarning oqibatlari oqilona cheklangan bo’lishi kerak. "Yaxshi arxitektura sizga asosiy qarorlarni keyinga qo’yishga imkon beradi" (Bob Martin) va xatolarning "xarajatlarini" minimallashtiradi.
Do'stlaringiz bilan baham: |