1-mavzu: Kirish uslubmetdiReja


Download 1.97 Mb.
bet21/39
Sana05.01.2023
Hajmi1.97 Mb.
#1078956
1   ...   17   18   19   20   21   22   23   24   ...   39
Bog'liq
Paradigma maruzalar

Kalit so’zlar: protsedura, funksional dekompozitsiya, funksiyaga murojaat, qism masala, qism dastur, struktura.
Mavzuni Byorn Straustapdan sitat keltirish bilan boshlaymiz: “Siz uncha katta bo’lmagan(ko’pi bilan 1000 qator) dastur kodini palapartish va barcha dastur kodini yozishning eng yaxshi uslublarini chetlab o’tgan holda yzoishingiz mumkin. Katta hajmli dasturlar uchun esa buni amalga oshira olmaysiz. Bunday holda 100 000 qatordan iborat dasturni esa xatolarini to’g’rilash juda og’ir. Chunki bir xato to’g’rilanishi bilan ikkinchi xato yuzaga qalqib chiqaveradi. C++ tili shunday ishlab chiqilgan tilki, katta dasturlarni ratsional tarzda strukturalash uchun bitta dasturchi amalga oshira oladi”.
Strukturali dasturlash uslubi deganda dastur matnini yaratishni ta’minlovchi struktura:

  • Yechiladigan masalaning strukturasini tasvirlaydi.

  • Nafaqat dastur kodini yozgan dasturchi uchun balki, boshqa dasturchilar uchun ham tushunarli bo’ladi.

Protsedurali dasturlash-bu ketma-ket bajariladigan operatorlarni dasturlash tilining o’z mexanizmlaridan foydalangan holda juda katta dastur kodi birliklarini qism dasturlarga yig’ish orqali imperativ tilda dasturlash uslubi hisoblanadi.
Protsedurali dasturlash uslubi quyidagi imkoniyatlarga ega:

  • Protsedurali dasturlash dasturchiga masalani yechishda har bir qadamini belgilab borish imkoniyatini beradi.

  • Bunday dasturlash tillarining o’ziga xos jihati shundan iboratki, masala qadamlarga bo’linadi va qadamba-qadam yechib boriladi.

Protsedurali dasturlash uchun berilgan masala bir qancha yirik qism masalaga bo’linadi. O’z navbatida bu qism masalalar ham yana qism masalalarga bo’linadi va h. Bunday masalalarni qism masalalarga bo’lish jarayoni masalalarni dekompozitsiyalash deyiladi.

Masalaning mantiqiy strukturasi (masalalarning dekompozitsiyasi)

Masalaning fizik strukturasi(c/c++ tillaridagi matni)
Umuman olganda katta dastur kodini bitta faylga sig’dirish mumkin. Lekin mantiqiy bog’langan qism masalalarni bir necha fayllarga guruhlash va bu moslikni alohida faylda saqlash foydali bo’ladi.
Dasturni fayllarga bo’lishning afzallik jihatlari:

  • Dastur strukturasini yaxshilaydi;

  • Faqat bitta dastur kodini o’zgartirish uchun yangi yuklanuvchi modulni hosil bo’lish umumiy vaqtini qisqaradi.

Shuni qayd etish kerakki, dasturni fizik jihatdan modullarga bo’lish murakkab emas, lekin jiddiy muammo shundaki, modullar o’rtasida tashqi aloqada xavfsizlikni ta’minlash, qulay va samarali o’zaro aloqani ta’minlash lozim bo’ladi.
C/C++ tillari va boshqa zamonaviy tillarning modulliligini ta’minlash uchun har bir faylni alohida kompilyatsiya qilish va yagona yuklanuvchi modulga birlashtirish zarur bo’ladi.
C/C++ tillarida funksiya dasturning ixtiyoriy joyidan dastur boshqarilishini uzatish(chaqirish) mumkin bo’lgan dastur kodi qismini ifodalaydi. Funksiya ishi tugashi bilanoq umumiy dasturning bajarilishi funksiya chaqirilgan yerdan davom etadi.
Funksiya bitta va faqat o’sha koddan turli xil ma’lumotlar to’plami bilan foydalanish imkonini beradi (funksiyalarni quyi darajali abstraksiyalash degan nuqtai-nazar bilan qarash mumkin). Funksiyalar protsedurali dasturlashning asosiy vositasi hisoblanadi.

Download 1.97 Mb.

Do'stlaringiz bilan baham:
1   ...   17   18   19   20   21   22   23   24   ...   39




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