1-Amaliy ishi Mavzu: Dasturning modulli tuzilmasi. Tuzilmaviy dasturlash misollari tahlili. Tutashuvni kamaytirish yo’llari (coupling). Bog’lanishni oshirish yo’llari (cohesion). Algoritmlarni loyihalashga misollar


Download 34.72 Kb.
bet5/9
Sana19.11.2023
Hajmi34.72 Kb.
#1786435
1   2   3   4   5   6   7   8   9
Bog'liq
1-amaliy ish

Modullar juda kichik
Faqat juda kichik funktsiyani o'z ichiga olgan juda ko'p modullar mavjud. Har bir modul kod sarlavhasidan tashqari qo'shimcha tahlil qilish va qayta ishlash vaqtini talab qiladi.
Shuning uchun ko'plab kichik modullardan foydalanish kompilyatsiya tizimiga qo'shimcha xarajatlar qo'shib, paket hajmini oshiradi.
Hech qanday sababsiz parchalaning
Ba'zi kodlar deyarli hech qachon o'zgarmaydi. Bunday holatlarda uni yanada toza yoki mavhum mantiq bilan ko'rsatishga urinish unchalik mantiqiy bo'lmasligi mumkin, agar uni ishlatish allaqachon yaxshi ishlayotgan bo'lsa.
Juda chiroyli ko'rinmaydigan kodlar mavjud, ammo ular so'nggi yillarda juda o'zgarmadi. Hech qachon o'zgarmagan va allaqachon modullarda yaxshi ishlaydigan kodni parchalash uchun hech qanday sabab yo'q.
Ilovalar
Modulli dasturlash shunchaki tushuncha. Uning amaliyoti har qanday dasturlash tilida, ayniqsa alohida tuzilgan dasturga ega bo'lgan protsessual xarakterdagi dasturlarda qo'llanilishi mumkin.
Alohida kompilyatsiya qilingan modullardan tashkil topgan komponentlar kutubxonalari bog'lovchi deb nomlangan dasturlash vositasi yordamida to'plamga birlashtirilishi mumkin.
Asosiy modul tomonidan ishlatiladigan funktsiyalarni eksport qilish kerak bo'lganda, ularga kirishni osonlashtirish uchun turli xil modullardagi funktsiyalar nomlari noyob bo'lishi kerak.
Modulli dasturlash kontseptsiyasini qo'llab-quvvatlovchi dasturlash tillari orasida C, Ada, PL / I, Erlang, Paskal, Algol, COBOL, RPG, Haskell, Python, HyperTalk, IBM / 360 Assembler, MATLAB, Ruby, IBM RPG, SmallTalk, Morpho, Java (paketlar modul deb hisoblanadi), Perl va boshqalar.
C tili
Modulli dasturlash S tilida qo'llanilishi mumkin, chunki u katta qiyinchiliklarni bir nechta modullarga ajratish orqali bartaraf etishga imkon beradi.
Ushbu modullarning har biri ma'lum bir muammoni hal qiladi, shu kabi protseduralar to'plami bo'lgan asosiy dastur bu muammoni butunlay hal qiladi.
S-da belgilangan har bir funktsiyaga sukut bo'yicha global miqyosda kirish mumkin. Buni funktsiyani amalga oshirish belgilangan sarlavha faylini kiritish orqali amalga oshirish mumkin.
Misol tariqasida biz ma'lumotlar to'plamining turini e'lon qilmoqchimiz, shuningdek amalga oshirish va ma'lumotlar tuzilishini foydalanuvchilardan yashirishni istaymiz.
Dastlab stack.h deb nomlangan umumiy faylni aniqlash orqali amalga oshirish mumkin, u stack ma'lumotlar turiga ega bo'lgan umumiy ma'lumotlarni va stack ma'lumotlar turi tomonidan qo'llab-quvvatlanadigan funktsiyalarni o'z ichiga oladi.
stack.h:
tashqi stack_var1;
extern int stack_do_something (bekor);
Endi stack ma'lumotlar turini amalga oshirishni o'z ichiga olgan stack.c nomli fayl yaratishingiz mumkin:

Download 34.72 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling