• 5.2. Ma’lumotlar abstrakt tiplari Ada tilida
  • LINKED_LIST_TYPE
  • Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr




    Download 6,33 Mb.
    Pdf ko'rish
    bet145/194
    Sana20.02.2024
    Hajmi6,33 Mb.
    #159185
    1   ...   141   142   143   144   145   146   147   148   ...   194
     
    5.1.3. Baxolash 
    SIMULA 67 tilidagi sinf qurilmasi ma’lumotlar taqdimoti detallarini sinf mijozlari 
    o‘zgartirishining asrash inkapsulyatsiyani ta’minlaydi, ma’lumotlar ochilishini emas. SIMULA 67 tili 
    o‘zining sinf qurilmasini ishlashda inqilobiy edi. Biroq dasturlashning bu turi keng tarqalmaganligi 
    tufayli bu yerda biz uni faqat tarixiy qiziqish nuqtai nazaridan eslab o‘tdik. Endi esa ma’lumotlar 
    abstraksiyasini to‘liq qo‘llab-quvvatlashni ta’minlaydigan ikkita zamonaviy Ada va C++ dasturlash 
    tillarini ko‘rib chiqishga qaytamiz. 
    5.2. Ma’lumotlar abstrakt tiplari Ada tilida 
    Ada tili inkapsulyatsiya sining ma’lumotlar abstrakt tiplarini modellashtirishda ishlatiladigan 
    vositalarni ta’minlaydi. Shuningdek ularni taqdim qilish imkoniyatini yashiradi. 
     
    5.2.1. Inkapsulyatsiya
    Ada tilidagi inkapsulyatsiya qurilmalari paketlar deb ataladi. Paketlar ikki qisman iborat 
    bo‘lib, ularning har biri ham paket deb ataladi. Ular inkapsulyatsiya interfeysini ta’minlaydigan 
    paket tasnifi va tasnifda sanalgan mohiyatlar tadbiqini ta’minlaydigan paket tanasi deb ataladi. 
    Barcha paketlar ham tanaga ega emas (faqat tiplar va konstantalarni inkapsulyatsiya qiladigan 
    paketlar tanaga ega emas va ularga muhtoj ham emas)


    Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
    266 
    Paket tasnifi va u bilan bog‘liq paket tanasi bir xil nomga ega. Paket sarlavhasidagi qayd 
    etilgan body so‘zi u paket tanasi ekanligini bildiradi. Paketning tasnifi va tanasi faqatgina paket 
    tasnifi birinchi bo‘lib, kompilyatsiya qilingan sharaoitdagina aloxida kompilatsiya qilinishi mumkin.  
     
    5.2.2. Ma’lumotlarni ochish 
    Paket tasnifini tasvirlash uchun va ularni eksport qilish uchun qo‘llaniladigan tiplar uchun 
    hech qanday chegirmalar yo‘q. Foydalanuvchi, yoki mijozlarga butunlay ko‘rinarli bo‘lgan 
    mohiyatni yaratish mumkin yoki uning interfeysi haqidagi ma’lumotlarni ta’minlashi mumkin. 
    Buning uchun paket tasnifida ikkita mavzu qo‘llaniladi. Ulardan birinchisida mijozlarga ko‘rinarli 
    mohiyat aks etadi, ikkinchisida o‘z mazmunini yashiradi. Masalan agar tip eksport qilinishi kerak 
    bo‘lsa, lekin uning taqdimoti yashirilgan bo‘lsa, tasnifning ko‘rinadigan qismida faqatgina tipning 
    ismi va uning taqdimoti yashirincha ekanligi haqidagi fakt qisqartirilgan e’lon shaklida
    joylashtiriladi. Tipning taqdimoti yopiq (private) deb ataladigan tasnif qismida joylashtiriladi va 
    zaxiralangan private so‘zidan boshlanadi. Yopiq mavzu doimo tasnifning oxirida joylashtiriladi. 
    Aytaylik NODE_TYPE nomli tip paket bilan eksport qilinayapti, lekin uning taqdimoti 
    yashiringan. NODE_TYPE tipi paket tavsifining ko‘rinadigan qismida uning taqdimot detallarisiz 
    quyida ko‘rsatilganidek e’lon qilinadi: 
    type NODE_TYPE is private;
    E’lonlarning yopiq mavzusida NODE_TYPE tipi takrorlanadi lekin bu safar tipning to‘liq 
    aniqlanishi bilan: 
    package LINKED_LIST_TYPE is type NODE_TYPE is private; 
    private 
    type NODE_TYPE; 
    type PTR is access NODE_TYPE; 
    type NODE_TYPE is 
    record 

    Download 6,33 Mb.
    1   ...   141   142   143   144   145   146   147   148   ...   194




    Download 6,33 Mb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr

    Download 6,33 Mb.
    Pdf ko'rish