1. Dastur kodining modulligi Modullarning modul tizimi
Download 93.63 Kb.
|
1 2
Reja: 1.Dastur kodining modulligi 2.Modullarning modul tizimi 3.Modullar kontseptsiyasi tarixi 4.Dasturlash tillarida amalga oshirish Modullik printsipi dasturiy ta'minotni (dasturiy ta'minotni) loyihalash vazifasini soddalashtirish va ishlab chiqish jarayonini ishlab chiqish guruhlari o'rtasida taqsimlash vositasidir. Dasturiy ta'minotni modullarga bo'lishda har bir modul u amalga oshiradigan funksionallikni, shuningdek, boshqa modullar bilan bog'lanishni ko'rsatadi. Modulli arxitekturadan foydalanish qulayligi tizimning qolgan qismini oʻzgartirmasdan modulni yangilash (almashtirish) imkoniyatidadir. Modulli dasturlash - bu dasturni tuzilishi va xatti-harakatlari ma'lum qoidalarga bo'ysunadigan modullar deb ataladigan kichik mustaqil bloklar to'plami sifatida tashkil etishdir. Modulli dasturlashdan foydalanish dasturni sinash va xatolarni topishni osonlashtiradi. Uskunaga bog'liq bo'lgan pastki vazifalarni boshqa kichik vazifalardan qat'iy ravishda ajratish mumkin, bu esa yaratilgan dasturlarning ko'chmaligini yaxshilaydi. Modul - bu dasturning funktsional jihatdan tugallangan qismi . Ko'pgina tillarda (lekin shart emas) u manba kodi yoki uning nomli uzluksiz qismi bilan alohida fayl sifatida formatlanadi . Ba'zi tillar modullarni paketlarga birlashtirishni ta'minlaydi . Modullarning rolini ma'lumotlar tuzilmalari , funktsiyalar kutubxonalari , sinflar , xizmatlar va ba'zi funktsiyalarni amalga oshiradigan va unga interfeysni ta'minlaydigan boshqa dastur birliklari o'ynashi mumkin . Dastur kodi ko'pincha bir nechta fayllarga bo'linadi, ularning har biri boshqalardan alohida tuzilgan . Dastur kodining bunday modulligi faqat oz sonli manba fayllariga kiritilgan o'zgartirishlar uchun qayta kompilyatsiya qilish vaqtini sezilarli darajada qisqartirishi va jamoaviy ishlanmani osonlashtirishi mumkin . Bu, shuningdek, butun loyihani qayta tiklamasdan (masalan, tayyor dastur uchun plaginlarni ishlab chiqish) yakuniy dasturiy mahsulotning alohida komponentlarini (masalan, jar fayllari , so yoki DLL kutubxonalari) almashtirish qobiliyatidir . Modulli dasturlarni yozish usullaridan biri ob'ektga yo'naltirilgan dasturlashdir . OOP inkapsulyatsiya , polimorfizm va kech ulanish kabi xususiyatlar orqali yuqori darajadagi modullikni ta'minlaydi . Modulli dasturlashning ma'lum bir tilning tafsilotlari bilan hech qanday aloqasi yo'qligiga qaramay (va til tomonidan aniq yordam bo'lmasa ham, uni dasturchilar tomonidan etarli intizom bilan qo'llash mumkin), aksariyat tillar o'zlarining modullarini kuchaytiradilar. modul tizimini bir tildan ikkinchi tilga o'tkazish kabi tizimni yuqori darajaga ko'tarish mumkin emas . Yilda 2000, Xavier Leroy o'z turi tizimi bilan ma'lum bir til yadro tasvirlab tomonidan modulli modul tizimlari, parameterizable qilish taklif . Misol tariqasida, u ML modul tilining (hozirda ma'lum bo'lgan eng rivojlangan modullar tizimi sifatida) umumlashtirilgan amalga oshirilishini va uni an'anaviy ML va C tiliga joriy qilish misollarini ko'rsatdi . Leroy ilovasining o'zi ML modul tili orqali , ya'ni tilning yadrosi haqidagi ma'lumotlar va uning turining mustahkamligini tekshirish mexanizmining tavsifi bilan parametrlashtirilgan funktor shaklida qurilgan . Bu shuni anglatadiki, ma'lum bir til uchun kompilyator yozishda tilning yadrosini tavsiflash va uni ushbu funktorga (kutubxona funktsiyasi sifatida) o'tkazish kifoya - natijada siz ma'lum tilni kengaytirish uchun kompilyatorga ega bo'lasiz . ML modullari tizimi . Kompilyatsiya birliklari sifatida modullar kontseptsiyasining tarixi Fortran II va Kobol tillariga , ya'ni 1950-yillarning oxiriga to'g'ri keladi [4] [5] . Tilni - 1976-yilda u Modülerlik tushunchasi ishlab chiqilgan bo'lgan bir maqola chop Meshax ( Eng. ) Da ishlab chiqilgan, Xerox PARC . 1977 yilda olim Niklaus Virt Xerox PARC ishlab chiquvchilari bilan muloqot qilib, ushbu kontseptsiya bilan batafsil tanishdi . [6] Ushbu g'oyalar Wirth tomonidan 1977 yilda nashr etilgan Modula-2 tilini yaratishda ishlatilgan [7] . Dasturlashda “modul” atamasi dasturlarni yaratishda modul tamoyillarining joriy etilishi munosabati bilan ishlatila boshlandi. 1970-yillarda modul deganda ma'lum qoidalarga muvofiq yozilgan har qanday protsedura yoki funksiya tushunilgan. Masalan: «modul oddiy, yopiq (mustaqil), kuzatiladigan (50 dan 100 qatorgacha), masalaning faqat bitta funktsiyasini amalga oshiradigan, bitta kirish va bitta chiqish nuqtasiga ega bo'lishi kerak. Agar dastur moduli birinchi asosiy xususiyatlari ko'proq yoki kamroq aniq tomonidan formuladan edi David Parnas yilda 1972 : "., Siz boshqa matni haqida etarli minimal bilim bo'lishi kerak, bir modul yozish uchun" Shunday qilib, ta'rifga ko'ra, modul har qanday alohida protsedura (funksiya) bo'lishi mumkin, ham ierarxiyaning eng quyi darajasi (amalga oshirish darajasi), ham modulning boshqa protseduralariga qo'ng'iroqlar amalga oshiriladigan eng yuqori daraja. Shunday qilib, Parnas birinchi bo'lib ma'lumotni yashirish ( ingl. Information hiding ) dasturlash tushunchasini taklif qildi . Biroq, faqat 70-yillarning tillarida mavjud bo'lgan protsedura va funktsiya kabi sintaktik konstruktsiyalar global o'zgaruvchilarning keng qo'llanilishi tufayli ishonchli ma'lumotlarni yashirishni ta'minlay olmadi. Bu muammoni faqat global o'zgaruvchilar ta'sirida bo'lmagan yangi sintaksisni ishlab chiqish orqali hal qilish mumkin edi. Ushbu dizayn yaratilgan va modul deb nomlangan. Dastlab, murakkab dasturiy ta'minot tizimlarini amalga oshirishda moduldan protseduralar va funktsiyalar bilan bir qatorda ma'lum bir kichik vazifani amalga oshirish tafsilotlarini birlashtiruvchi va ishonchli tarzda yashiradigan tuzilma sifatida foydalanish kerak deb taxmin qilingan. Shunday qilib, kompleksdagi modullar soni tayinlangan vazifani mustaqil kichik vazifalarga ajratish bilan aniqlanishi kerak. Haddan tashqari holatda, agar u amalga oshiradigan mahalliy harakat har qanday o'zgarishlarga dasturning boshqa qismlari ta'siridan mustaqil bo'lishi kafolatlangan bo'lsa, modul faqat bitta protsedurani o'rash uchun ishlatilishi mumkin. Birinchi marta modulning maxsus sintaktik konstruksiyasi 1975 yilda N.Virt tomonidan taklif qilingan va uning yangi tili Modulaga kiritilgan. Modullar mexanizmi joriy etilganda tilning xossalari qanchalik o‘zgarib borishini N.Virtning Modula-2 ning keyingi tili haqida aytgan quyidagi fikri tasdiqlaydi: “Modullar Modula-2 tilini ajratib turuvchi eng muhim xususiyatdir. 2 o'zidan oldingi Paskaldan." Modullar kontseptsiyasini rasmiy ravishda qo'llab-quvvatlaydigan tillar: IBM S / 360 Assembler , Cobol , RPG , PL / 1 , Ada , D , F (inglizcha) , Fortran , Haskell , Blitz BASIC , OCaml , Paskal , ML , Modula-2 , Oberon , Komponent Paskal , Zonnon , Erlang , Perl , Python va Ruby .... IBM tizimi ILE muhitida dasturlashtirilganda RPG , Cobol va CL tillaridagi "modullardan" foydalangan . Modulli dasturlash dasturlash tilining sintaksisi modullarni aniq nomlashni qo'llab-quvvatlamasa ham amalga oshirilishi mumkin. Dasturiy ta'minot vositalari guruhlarning bir qismi sifatida taqdim etilgan manba kodining modullarini yaratishi mumkin - dastur bog'lovchisi bilan tuzilgan kutubxona komponentlari . Standart Paskalda dastur qismlarini alohida kompilyatsiya qilish va keyin ularni bajarishdan oldin yig'ish mexanizmlari mavjud emas. Tijoriy Paskal kompilyatorlarini ishlab chiquvchilar uning modulliligini oshiradigan til vositalarini kiritishga intilishlari juda tushunarli. Paskal moduli - bu deklaratsiya bo'limining turli komponentlarini (turlar, konstantalar, o'zgaruvchilar, protseduralar va funktsiyalar) va ehtimol boshlash qismining ba'zi bajariladigan operatorlarini o'z ichiga olgan avtonom kompilyatsiya qilingan dastur birligi. O'zining tashkil etilishi va dasturda qo'llanish xarakteriga ko'ra Paskal modullari Ada dasturlash tilining modul-paketlariga (PACKAGE) yaqin. Ularda, xuddi Ada paketlarida bo'lgani kabi, ma'lum bir "ko'rinadigan" interfeys qismi aniq ta'kidlangan bo'lib, unda global tiplar, konstantalar, o'zgaruvchilar tavsiflari, shuningdek, protseduralar va funktsiyalarning sarlavhalari jamlangan. Interfeys qismidagi ob'ektlarning ko'rinishi ularni boshqa modullar va asosiy dastur uchun mavjud qiladi. Protseduralar va funksiyalar tanasi modulning foydalanuvchidan yashirilishi mumkin bo'lgan bajariladigan qismida joylashgan. Modullar ilovalar kutubxonalarini ishlab chiqish uchun ajoyib vosita va kuchli modulli dasturlash vositasidir. Modullarning muhim xususiyati shundaki, kompilyator o'z dastur kodini alohida xotira segmentiga joylashtiradi. Segment uzunligi 64 KB dan oshmasligi kerak, lekin bir vaqtning o'zida ishlatiladigan modullar soni faqat mavjud xotira bilan cheklangan, bu esa katta dasturlarni yaratish imkonini beradi. Foydalanilgan adabiyotlar ro’yxati: http://vit-prog.narod.ru/page/TRPP/section_1/subject_1.3.htm MODULYOR DASTURLASH - Vizual lug'at . 2013-yil 18-aprelda olindi . 2013- yil, 19-aprelda arxivlangan . Orqaga o'tish: Download 93.63 Kb. Do'stlaringiz bilan baham: |
1 2
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling