Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
261
usuli. Lekin bunday inkapsulyatsiyalarning ishlatishda interfeys tekshiruvi yo‘q.
Shuning uchun
bunday yondashuv o‘z tabiyatiga ko‘ra xavfsiz emas.
C tilida ma’lumotlar tavsifi va o‘zaro bog‘liq funksiyalarni to‘plamlarini boshqa fayllardan
mustaqil kompilatsiya qilingan boshqa faylga joylashtirish mumkin. C tili kompilyatorlari hozirgi
paytda kerakli darajada ayrim funksiyalarning interfeysi to‘g‘riligini tekshirishiga qaramay ular hali
ham boshqa fayllardagi ma’lumotlar aniqligini tekshirishni amalga oshirmaydi(“
Kerakli darajada
aniq ” jumlasi ostida biz shunday funksiyalarni nazarda tutamizki ular ANCI S standartiga mos
kelmaydigan funksiyalar sarlavhasidan foydalanmaydilar). Demak C fayllari ham xavfsiz
inkapsulyatsiyani ta’minlay olmaydi. Ko‘pgina zamonaviy tillar , jumladan FORTRAN 90 va Ada qism
dasturlar to‘plamlarini turlarini va ma’lumotlarini modullarga yig‘ish imkoniyatini beradi. Bu
modullarni alohida kompilyatsiya qilish mumkin. Bunda shuni nazarda
tutish kerakki ularni
interfeysi haqidagi ma’lumotlar kompilyatorda interfeys tipini boshqa modulda ishlatilganda
tekshirish uchun saqlanadi. Ko‘rib chiqilayotgan tillar shuningdek bu modular asosini boshqarish
mexanizmiga ega. Bu esa modulga tashqi modullarga ko‘rinarli bo‘lgan ayrim tiplarni o‘zida aks
ettirish imkoniyatini beradi. Bunda bu tiplarni namoyish etish boshqa
mohiyatlar uchun faqat
modul ichida mumkin. Bu modullar a’lo darajadagi inkapsulyatsiyani ta’minlaydi . Ular faqatgina
dasturning aniq va mantiqiy tashkil qilishi qo‘llab-quvvatlab qolmasdan balki bu dasturiy tuzilmani
dasturchilar uchun tushunarli qiladi.
SIMULA 67, Ada va S++ tillaridagi inkapsulyatsiyani ta’minlash vositalarini o‘ziga hos
hususiyatlari ma’lumotlar abstract tiplari bilan birga 5 qismida muhokama qilinadi.