Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
242
Ifodalarda chaqiriluvchi funksiyalarga xos bo‘lgan nosozliklar natijasida 4
bobda yozilganidek, funksiyadagi parametrlar kiritish rejimida yuborilishi lozim. Ba’zi
dasturlash tillari ushbu talab
bajarilishini talab qiladi; masalan, Ada tilidagi
funksiyalar faqat kiritish rejimida yuboriluvchi rasmiy parametrlarga ega bo‘lishi
mumkin. Bu parametrlar yuborilishida yoki parametrlar hamda dunyoviy
o‘zgaruvchilar nomlari bir xilligi vujudga kelganda nosozliklar
kelib chiqishidan
saqlaydi. Ammo, boshqa tillarda, funksiyalar yoki qiymat bo‘yicha, yoki ssыlka
bo‘yicha yuboriluvchi parametrlarga ega bo‘lishi mumkin,
buning natijasida,
nosozliklar hamda nomlar bir xilligi yuzaga keladi.
10.2. Qaytariluvchi qiymatlar tiplari
Dasturlashning boshqaruvchi tillarining ko‘pchiligida funksiyalar tomonidan
qaytarilishi mumkin bo‘lgan o‘zgaruvchilar tiplari cheklangan. FORTRAN 77, Pascal va
Modula-2 tillarida funksiyalar faqat strukturalashmagan tiplarni qaytarishi mumkin.
S tilida funksiyalar massiv va funksiyalardan tashqari har qanday tipdagi
o‘zgaruvchilarni qaytarishi mumkin. C++ tili S tiliga o‘xshash, ammo unda funksiyalar
foydalanuvchi tomonidan aniqlangan o‘zgaruvchilar yoki sinflar ob’ektini ham
qaytarishi mumkin. Ada tili – zamonaviy boshqaruvchi tillar
orasida funksiyalar har
qanday tipli o‘zgaruvchilarni qaytara oladigan yagona til hisoblanadi.
11. Mahalliy bo‘lmagan muhitlarga kirish
Odatda, qism dasturlar o‘rtasidagi aloqa faqat parametrlar orqali o‘rnatilishiga
qaramay, ko‘pchilik tillarda o‘zgaruvchilar bilan bog‘lanishning yana bir turi mavjd
bo‘lib, u tashqi muhit orqali amalga oshiriladi.
Mahalliy
bo‘lmagan
o‘zgaruvchili
qism
dasturlar
–
bu
qism
dasturdako‘rinadigan o‘zgaruvchilar bo‘lib, lekin mahalliy e’lon qilinmagan bo‘ladi.
Dunyoviy o‘zgaruvchilar – bu dasturning barcha modullarida ko‘rinuvchan bo‘lgan
o‘zgaruvilar hisoblanadi. 4 bobda nomahalliy muhitlarga kirishning ikkita metodlari
o‘rganib chiqilgan: statik to‘plam va dinamik to‘plam.
Ushbu ishlab chiqarishdagi
muammolar quyida ko‘rib chiqilgan.
Ma’lumotlarning statik to‘plamiagi asosiy muammo quyidagicha: dastur
strukturasi mahalliy va dunyoviy o‘zgaruvchiarning kiritiluvchanligi bilan aniqlanadi.
Bu muammolar to‘liq ravishda 4 bobda ko‘rib chiqilgan.
Ma’lumotlarning dinamik to‘plami ikki turdagi muammolarni keltirib
chiqaradi.
Birinchidan, qism dastur boshlanishidan to tugalangunigacha ketadigan
vaqt davrida mahalliy o‘zgaruvchilar bajarilayotgan har qanday qism dastur uchun
ko‘rinuvchan bo‘ladi, bunda o‘z ichidagi ma’lumotlar bo‘yicha
ushbu dasturlar
qanchalik mosligiga ahamiyat berilmaydi. Bunday kirishlardan mahalliy
Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
243
o‘zgaruvchilarni himoyalash mumkin emas. Qism dasturlar chaqirilayotgan modul
muhitiga bog‘lif bo‘lmagan holda bajarildi.
Buning natijasida, ma’lumotlarning
dinamik to‘plami ma’lumotlarning statistik to‘plamiga qaraganda ishonchsizroq
dasturlar yaratadi.
Dinamik to‘plam bilan bog‘liq bo‘lgan ikkinchi muammo – bu nomahalliy
o‘zgaruvchilarga o‘rnatilgan ssыlkalar tiplari muvofiqligini
statistik tahlil qilish
imkoniyatiniing yo‘qligidir, chunki bunday o‘zgarvchining taqdimotini statistik holda
topishning hech ham iloji yo‘q.
Nomaalliy o‘zgarvchilarga kirishni amalga oshirish 9 bobda to‘liq ko‘rib
chiqiladi.