Ishning maqsadi. Talabalarga dastur kodini generatsiyalash va loyihani rasmiylashtirish bo‘yicha amaliy bilim berish.
Qisqacha nazariy ma’lumotlar:
Agar qaysi bir tildagi kod generatsiyasini Rational Rose muhitida amalga oshirish zarur bo‘lsa, avvalo bu tilni qo‘ldan mazkur muhitga “ulash” kerak bo‘ladi, chunki bu til avtomatik tarzda oldindan “ulanmagan” bo‘ladi. Buni ulash uchun “Add-lns” → “Add In Manager” buyruqlar ketma-ketligi ishlatiladi, yuzaga kelgan muloqot oynasidagi Rose C++ satri faollashtiriladi va OK tugmasi bosib oyna yopiladi.
Quyida kod generatsiyasi jarayonining bosqichlari keltirilgan:
1. Xossalar majmuasini yaratish.
2. Komponentlar spetsifikatsiyasini aniqlash.
3. Komponentlarga xos dasturlash tilini tanlash.
4. Komponentlarga sinflarni belgilash.
5. Xususiyatlar to‘plamini model elementlari bilan bog‘lash.
6. Kodni generatsiya qilish.
7. Xatolarni tahlil qilish.
Kodni generatsiya qilishda, umuman, loyihaning xususiyatlari, shuningdek sinflar, rollar, atributlar va operatsiyalar darajalarining xususiyatlari to‘la hisobga olinadi.
Loyihaning xususiyatlarini boshqaradigan xususiyatlar loyiha faylining nomini, standart konteyner sinflarining nomlarini va yaratilgan kodning joylashuvini o‘z ichiga oladi.
Sinf darajasidagi xususiyatlar konstruktorlar, destruktorlar, taqqoslash operatorlari, nusxa ko‘chirish konstruktorlari, get/set usullariga ehtiyoj va qanday yaratishni talab qiladi.
Rol xususiyatlari to‘plami get/set usullaridan foydalanish zaruriyatini, usullarning ko‘rinish xususiyatlarini va ma’lum bir konteyner sinfidan foydalanish variantlarini belgilaydi.
Rational Rose loyihaning mohiyatiga mos keladigan istalgan miqdordagi xossalar to‘plamini yaratish va tahrirlash imkoniyatini beradi. Har bir sinf uchun ikkita fayl yaratiladi: sarlavha fayli (.h) va spetsifikatsiya fayli (.cpp).
Oddiy loyihada ishlab chiqarilgan kod uchun xususiyatlar to‘plamini yaratish bo‘yicha mas’uliyat bir nechta xodimlar o‘rtasida taqsimlanadi va natijalar barcha jamoa a’zolari tomonidan qo‘llaniladi. Tez-tez yaratiladigan xossalar to‘plamiga misollar: “virtual destructor”, “virtual operatsiya”, “mavhum operatsiya”, “statik operatsiya” va h.k.
Rational Rose yaratilgan komponentlarning nomenklaturasi va ularning stereotiplari asosida kod ishlab chiqaradi. Har bir stereotip bo‘lmagan komponent uchun tizim tegishli sinf uchun deklaratsiya va ta’rif ma’lumotlarini o‘z ichiga olgan .h-faylini yaratadi. Agar komponent paket spetsifikatsiyasi sifatida stereotiplangan bo‘lsa, sinf deklaratsiyasi bilan .h-fayli yaratiladi. Agar bir vaqtning o‘zida Package Body stereotipi bilan mos komponent mavjud bo‘lsa, u holda .cpp fayli sinf ta’rifi bilan yaratiladi.
Elementlari .h va .cpp fayllariga mos keladigan komponent diagrammasining namunasi quyidagi rasmda ko‘rsatilgan. Bunda diagrammaning yorug‘lik qismi sarlavha fayliga, soyali qismi esa kod tanasi fayliga mos keladi.
Umuman olganda, kod butun bir paket uchun, alohida komponent uchun yoki komponentlarning butun bir guruhi uchun generatsiya qilinishi mumkin. Kod joylashtirilgan fayl nomi sifatida paket yoki komponent nomi tanlanadi.
Topshiriqlar:
1. Kod generatsiyasi jarayonining bosqichlari nimalardan iborat?
2. Har bir sinf uchun nechta fayl yaratiladi?
3. Dastur kodini generatsiya qilish mohiyati haqida yozma ma’lumot tayyorlang.
Do'stlaringiz bilan baham: |