Alisher navoiy nomidagi samarqand davlat universiteti mexanika-matematika fakulteti
Download 1.68 Mb. Pdf ko'rish
|
c tili kompilyatorlari va ularning xususiyatlari
O’ZBEKISTON RESPUBLIKASI OLIY VA O’RTA-MAXSUS TA’LIM VAZIRLIGI ALISHER NAVOIY NOMIDAGI SAMARQAND DAVLAT UNIVERSITETI MEXANIKA-MATEMATIKA FAKULTETI AMALIY MATEMATIKA VA INFORMATIKA BO’LIMI 5110700-INFORMATIKA O’QITISH METODIKASI YO’NALISHI Mavzu: C++ tili kompilyatorlari va ularning xususiyatlari 206 guruh talabasi : Umirzoqov A Kurs ishi rahbari: Nazarov F SAMARQAND-2016 Mundarija Kirish. I. C++ tilining barcha kompilyatorlari imkonyatlari; 1. C++ Builder 6 kompilyator haqida. 2. DEV C++ kompilyator haqida malumot. 3. CodeBlocks kompilyator imkonyatlari. II. C++ tilining kompilyatorlarida dasturlar tuzish; 4. C++ Builder 6 dasturlar tuzish. 5. CodeBlocks kompilyator dasturlar tuzish.
Kirish. Hozirgi kunda respublikamizdagi texnika oliy o‘quv yurtlarida “Informatika va axborot texnologiyalari” yo‘nalishi va mutaxassisliklariga turli xil dasturlash tillarini o‘rgatish mo‘ljallangan. Bizga ma’lumki, dasturlash tillarining yuzdan ortiq ko‘rinishlari mavjud, lekin qo‘llanilishi ko‘lamiga qarab C/C++ va C# dasturlash tillari yuqori dasturlash sinfiga mansubdir. Mutaxassislarning fikriga ko‘ra C++ dasturlash tili Assembler dasturlash tiliga eng yaqin bo‘lib, tezlik jihatidan 10 % ortda qolar ekan. Keyingi yillarda amaliy dasturchilarga juda ko‘p integratsion dastur tuzish muhitlari taklif etilmoqda. Bu muhitlar u yoki bu imkoniyatlari bilan bir–biridan farq qiladi. Aksariyat dasturlashtirish muhitlarining fundamental asosi C/C++ tiliga borib taqaladi. Ushbu kurs ishida hozirgi kunda kompyuterda berilgan funksiyalarni grafigini va har xil ko‘rinishdagi shakllarni chizish va ularni aniq koordinatalarini aniqlash, ekranni grafik rejimga o‘tkazish va undagi mavjud piksel va ranglardan foydalanish kabi vazifalarni o‘rganishga olib keladi. Xozirgi vaqtga kelib komp`yuter olamida ko’plab dasturlash tillari mavjud. Paskal, C++ va boshqa dasturlash tillaridir. C++ dasturlash tili universal tildir. U UNIX sistemasi bilan bog`langan bo`lib, bu sistemada ishlatiladigan bir qancha dasturlar C++ tilida yozilgan. Paskal tili 1969 yil N. Virt tomonidan yaratilgan bo’lib, keyinchalik amerikaning Borland firmasi tomonidan qayta ishlandi va uni Turbo Pascal deb nomlangan. C++ Denis Ritchi tomonidan 1972 -yili UNIX tipidagi op erasion sistemalarini yaratish uchun loyihalashtirilgan. Turbo Pascal ni qayta ishlash natijasida ob'ektli dasturlash yo’lga qo’yildi va 1995 yilda Borland kompaniyasi guruxi dastur tuzuvchilari Chack va Denny tomonidan Windows uchun mo’ljallangan dasturlash muxiti Borland Delphi dasturlash vositasi yaratildi. Borland C++ va Delphi dasturlash tili Windows uchun mo’ljallangan bo’lib, uning birinchi versiyasi Windows operatsion sistema qobig’ida ishlagan. Borland C++ va Delphi dasturlash tili – bu dasturlarni qayta ishlash muxiti bo’lib, Windows operatsion sistemasida ishlaydi. Unda
ob'ektli dasturlash tillari bo’lgan Object mujassamlashgan. Borland C++ va Delphi vizual proektlar, turli xolat protseduralarini qayta ishlash va dasturlarni qayta ishlashda vaqtdan yutish va boshqalarni o’z ichiga oladi. Men ham ushbu kurs ishim davomida C++ tilida matn muxarriri bilan ishlovchi obektlarga mo’ljallangan dasturni tuzib chiqmoqchiman. Ushbu dastur kichik dastur bo’lsada kelajakda boshqa dasturlar tuzishim uchun fundament vazifasini bajarishga harakat qilaman. Chunki hozirgi kunda matnlar bilan ishlash uchun katta dasturlar paketini o’rnatish, agar o’zida ishlaydigan dasturni ishlatsak o’zimizni sof tilda emas boshqa davlat tillarida ishlashi noqulayliliklar tugdiradi. Shuning uchun kichik matn muxarrirlari bilan ishlovchi dastur ishlab chiqaramiz Bu dasturni tuzib nafaqat yozishni amalga oshirish balki kichik matnlar ustida taxrirlash va dasturni ishlashni bilmaydigan foydalanuvchi ham bir ko’rinishda tushinadigan tushinarli, bejirm ko’rinishga ega dastur tuzmoqchiman. Men bu dasturni tuzib obektlar yaratishni va ular orqali shunga o’xshash yana boshqa obektlar yaratmoqchiman bu dasturda ishlashimga yana bir sabab boshqa obektlarga mo’ljallanmagan dasturlash tillarida faqat masalani matematik dasturi tuzib natija olinadi bunda yani C++ Builderda esa boshqa imkoniyatlar va kampanentalar bilan ham ishlashni o’rganmochimiz . I. C++ tilining barcha kompilyatorlari imkonyatlari;
1.1 C++ Builder 6 kompilyator haqida. Ixtiyoriy dasturlashda minimal (dasturlashdan maktab kursi doirasidagi ) bilmga ega foydalanuvchi ham muhitni tezda o’rgana oladi. Bu muhitning soddaligi professional dasturchi boiishga xalaqit qilmaydi. Borland C + + Builder 6 dasturlash muhitlari ichida eng sodda muhitlardan biri hisoblanadi. Bir nechta mashqlarni mustaqil bajargandan keyin, muhitdan kishining ajralgisi kelmaydi. Umuman, har qanday yangi texnologivani o’zlashtirayotganda bilgan. oigangan bilimlarni amalda tez-tez takrorlab turmasa, xotirada saqlab qolishning iloji bo‘lmaydi. Yangi tushunchani takrorlab, xotiraga joylash va uni tadbiq qilishni bilgandan keyingina, xotirada mustahkam joylashadi. Har bir dasturlash tili, muhiti o‘zidan oldingi tillarning mukammal tomonlarini o’zida mujassamlashtiradi. Shunga ko'ra. bitta zamonaviy tilni mukammal bilgan dasturchi ikkinchi tilni katta kuch va vaqt sariflamasdan o’rgana oladi. Dasturchilar tillarni o’rganayotganda birini ikkinchisi bilan solishtirib o’rganishadi. Masalan, OYD zamonaviy dasturlash tillari umumiy qoidalarga bo’ysunadi. OYDda har bir dasturlash elementi obyekt sifatida qaraladi. Bunda obyekt, barcha hollarda. maium umumiy qoidalarga va xususiy qoidalarga ega boiadi. Bu obyektlar oynalar, tugmalar, konteynerlar va Canvas lar ko‘rinishida boiishi mumkin.
Bunda har bir ilova kichik qismlarga ajratiladi, va vakunida bu qismlar birlashtiriladi. Borland C + + Builder 6 muhitida Windows ilovalar yaratish juda oson. OYDda qadam-baqadam alohida uncha katta boimagan dasturlarni funksiya metodlari amalga oshirsa, harakatlanuvchi jarayonlarni qayta ishlash
uchun hodisa amalidan, chaqiriluvchi obyektlarni tugmalar va oynalar bilan ifodalavdi. Dasturchilar tilida bu interfeysga tez qayta ishlovchi muhit RAD (Rapid Application Development) deb ataladi. Bunga sabab, bu muhitda dastur, ilova tuzish va uning dizaynini qurishda tayyor obyektlar va kutubxonada mavjud metodlardan foydalanish mumkin. Masalan, kompyuter avtomatik ravishda hodisani qayta ishlovchi funksiya dasturi matnini hosil qiladi. Ilova, bu - tayyor bajariluvchi fayl hosil qilish uchun kerak bo‘ladigan barcha fayllar to‘plamidir. Masalan, ilova tarkibiga dastur matni, tovush fayllari, ikonka rasmlari va shu kabi, ilovaga kerakli fayllar kirishi mumkin. Bunda har bir ilova uchun alohida papka hosil qilish maqsadga muvofiq sanaladi. Chunki ilovani boshqa kompyuterga o‘tkazmoqchi bo isak va fayllari, ikonka rasmlari va shu kabi, ilovaga kerakli fayllar kirishi mumkin. Bunda har bir ilova uchun alohida papka hosil qilish maqsadga muvofiq sanaladi. Chunki ilovani boshqa kompyuterga o‘tkazmoqchi bo’lsak va Interfeysning asosiy oynasi. papkada saqlamagan boisak, ularni yig‘ishimizga to'g'ri keladi. Bunda interfeysning o‘zi ilovani saqlashni talab qiladi. ammo papka hosil qilishni o'zimiz bilishimiz kerak. Interfeysning asosiy oynasi sarlavha oynasida ilova norm, ilovani tiklash, berkitish tugmalari joylashgan. Sarlavha nomi tagida asosiy menyu joylashgan. Bu menyu orqali muhitning barcha funksiya va komandalarim ishga tushirish mumkin. Asosiy menyuning tagida tez tugmalar joylashgan. Bu tugmalar ma nolariga ko'ra guruhlarga ajratilgan. Bu tugmalar orqali tez-tez ishlatiladigan komandalarni ishga tushirishimiz mumkin. Bu tugmalarning o'ngtomonidavizual komponentalar VCL (Visual Component Library - vizual komponentlar kutubxonasi) palitrasi joylashgan. Bu shunday obyektlarki yoki shunday dasturlash komponentalariki, bular yordamida Windows uchun vizual dasturlarni tezda yaratish mumkin. Komponentalar yordamida har xil tugmalar, rasmlar, yozuvlar, taymerlar, kalendar va hokazolarni ilovaga kiritishimiz mumkin. Vizual komponentalar palitrasi ma’nosiga va vazifasiga ko'ra guruhlarga ajratilgan. Bu muhitning barcha oynalarini berkitish mumkin faqat asosiy oy nani berkitsa, ilovadan chiqib ketiladi, boshqa barcha oynalar oichamlarini kattalashtirish va kichiklashtirish imkoniyatiga egamiz. Vizual komponentalar palitrasi. Vizual komponentalar palitrasimng bir qismi monitorda ko'rinib turadi, qolganlarini o'ng va chapga siljituvchi tugmachalar vositasida ко rishimiz mumkin. Ekran (monitor) markazida forma (shakl) dizayneri joylashgan (20.3- rasm). Bu bo'lg‘usi dasturning interfeysini hosil qiluvchi oynadir. Oynaning nomi va sarlavhasi uning tepasida yozilgan boiadi. Odatda,
Forma (shakl) dizayneri.
Dastur kodi muharriri. Form 1 (Form 2, Form 3, Form 4) va shuningdek oynani berkituvchi va kichraytiruvchi tugmachalar ekranning o‘ng tepasida joylashgan boiadi. Oy naning sathiga vizual dastur uchun zarur bo'ladigan VCL komponentalar joylashtiriladi. Forma (shakl) dizayneri ostida dastur kodi muharriri joylashgan, odatda, u
Unitl.cpp sarlavha bilan beriladi. Bu ovna (20.4-rasm) dastur kodini kiritish va tahrir qilish uchun moijallangan.
Ekranning chap past qismida Obyektlar inspektori oynasi joylashgan Bu oyna Object Inspector sarlavha bilan beriladi (20.5-rasm). Bu oynada vizual komponentalarga xususiyatlar o‘rnatiladi. Bu oynani dasturchi o‘zi xohlagan ekran sathiga joylashtirishi mumkin. Obyektlar inspektori oynasi ostida obyektlarning daraxtsimon ko'rinishi oynasi (20.6-rasm) joylashgan. Bu oynada ilovadagi barcha obyektlar daraxt strukturasi shaklida ifodalangan bo‘ladi. Formalar, dastur kodi va boshqa dastur tarkiblari fayllari berilgan bo‘ladi. Bu interfeys ilova tuzatayotganda eng asosiy foydalanayotgan qurolimiz bo'ladi.
File buyruqlari guruhi Menyuning birinchi File (Fayl) buyrug'i guruhi 20.7-rasmda berilgan. Bu menyu buyruqlari fayllar bilan ishlashga mo‘ljallangan va quyidagi amallarni bajaradi:
ochish, fayllarni saqlash (Save) va (Close) yopish. ilova dastur kodi matnini (Print) chop qilish mumkin.
Edit buyruqlari guruhi Edit (Muharrir) 20.8-rasmda ifodalangan. Menyuning bu buyruqlari guruhi tahrir qilish uchun zarur boigan buyruqlardir. Masalan, inkor qilish (Undelete) va
fayllardanbiror matnni izlash va avtomatik almashtirish.
View buyruqlari guruhi. kerakli satrga o'tish va uni o'zgartish imkonini beradi. View buyruqlari guruhi View (Ko'rish) 20.10-rasmda ifodalangan. Menyuning bu buyruqlari guruhidan ilova va komponentalarni boshqarishni asosiy muloqot oynalari chaqiriladi. Masalan, ilova menedjeri (Project Manager), komponentlar ro'yxati (Component List) va oynalar ro‘yxati (Window List).
Project buyruqlari guruhi Project (Ilova) 20,11-rasmda keltirilgan. Menyuning bu buyruqlari guruhida ilovani boshqarish buyruqlari yig‘ilgan. Bu buyruqlar yordamida fayllarni qo‘shish, o‘chirish, VCL komponentalar kutubxonasiga komponenta qo‘shish, kompilatsiya qilish va shunga o‘xshash amallarni bajarish mumkin.
Run (Bajarish) 20.12-rasmda ifodalangan. Menyuning bu buyruqlari guruhi yordamida ilovani ishga tushirish va bekor qilish, ilovani butunlay va qadam- baqadam rejimda ishga tushirish, ko'rish uchun qo‘shimcha o'zgaruvchilar kiritish va ilova bajarilishini to‘xtatuvchi belgilar kiritish mumkin.
Component (Komponent) buyruqlar guruhi 20.13-rasmda berilgan. Menyuning bu buyruqlari guruhi
yordamida yangi
komponentalarni qo‘shish va konfiguratsiyalarini aniqlash ishlari bajariladi.
Database buyruqlari guruhi Database (MaTumotlar bazasi) buyruqlar guruhi (20.14-rasm) ma’lumotlar bazasi bilan ishlaydigan buyruqlarni o‘z ichiga olgan.
Tools (Instrumentlar) buyruqlar guruhi 20.15-rasmda berilgan Menyuning bu buyruqlari guruhi yordamida ilova parametrlarini o‘rnatish va yordamchi dasturlar buyruqlarini chaqirish mumkin. Windows buyruqlari guruhi
Windows (oyna) buyruqlari guruhi 20.16-rasmda berilgan.
Menyuning bu buyruqlari guruhi yordamida interfeysning oynalarini boshqarish mumkin.
Help (Yordam) buyruqlari guruhi 20.17-rasmda berilgan. Menyuning bu buyruqlari guruhi yordamida muhit, til. Komponentalar va kompyuter haqidagi ma'lumotlarni olishimiz mumkin (20.18-rasm). About buyrugi oynasi. Tezkor tugmalar Tezkor tugmalar asosiy menyu bilan vonma-yon joylashgan (20.19- rasm). Tezkor tugmalar . Bu tugmalar ko'p ishlatiladigan, tez-tez murojaat qilinadigan bo‘lganligi sababli alohida guruhlarga ajratilgan holda kichik piktogrammalar yordamida berilgan. Bu tugmalar asosiy menyuda ham mavjud, ammo vaqtdan yutish uchun ajratib ham qo‘vilgan.
Standard (Standart) tugmalar Dasturning obyektlarini hosil qilish uchun Standart tugmalardan foydalaniladi. Bu obyektlarga dasturlar, yangi formalar, fayllar, kutubxonalar va hakozolar kirishi mumkin. Yangi obyektni hosil qilish uchun New tugmasini bosamiz. Bunda New Items (20.20-rasm) muloqot oynasi paydo
New Items muloqot oynasi boiadi, bundan ilova tuzish uchun kerakli obyektni tanlaymiz. Bu oynada ko'plab obyektlar m aium guruhlarga ajratilgan holda joylashgan. Bu guruhning boshqa tugmalari favlni saqlash (Save) va ochish (Open) uchun xizmat qiladi. AddFileToProject tugmalari orqali ilovaga
fayl qo'shish va RemoveFileFromProject fayl o‘chirish imkonini beradi. View (Ko‘rish) tugmasi
Bu guruhga quyidagi tugmalar jamlangan: (New Form) yangi forma hosil qiladigan, (ViewUnit) modullarni qurish, (ViewForm) formani qurish, (Toggle Form/Unit) formadan modulga, moduldan formaga o‘tishni ta’minlaydigan tugmachalar. Toggle Form Unit formadan kodni tahrirlashga, tahrirlashdan formaga o'tkazuvchi tugma. Agar ilovada bir nechta forma qatnashsa, ularni qurish uchun View Form (Shift + F12) tugmadan foydalaniladi. Yangi forma hosil qilish uchun New Form tugma bosiladi. Bunda yangi forma dizayneri paydo boiadi. Odatda, sarlavhasi Form 2 kabi nomlangan boiadi. Yangi forma ilovada yangi oynalarni ko'rsatish va ifodalash uchun zarur boiishi mumkin. 1.2 VCL-komponentalar palitrasi Borland C + + Builder 6 muhitining VCL visual komponentalari bilan tanishamiz. Borland C + + Builder 6 muhitida ilova yaratish VCL visual komponentalaridan keraklilarini formaga joylashtirishdan boshlanadi Komponentalar ilovaning g‘lshtchalari (elementlari. qismlari) deyishimiz mumkun Builder so’zining ma’nosi quruvchi degan ma’noni anglatadi Barcha VCL komponentalar, palitrasi asosiy menyuning o‘ng tomonida joylashgan bo’ladi. Komponentalar palitrasi ma'lum bir vazifalariga ko'ra komponentalar to’plamidan iborat komponentalar sahifasiga ajratilgan Bu sahifalar ma’no va vazifasiga ko'ra bir-biriga yaqin bo‘lgan komponentalarni bitta guruhga birlashtirgan. Sichqonchaning chap tugmasini sahifa komponentalar nomi ustida bossak. mazkur sahifa komponentalari guruhi ekranda paydo bo'ladi. Masalan. Standart sahifasini bossak ekranda kom ponentalar paydo bo'iadi (20.22-rasm).
C++ Builder 32 razryadli takomillashtirilgan Vizual Komponentalar Kutubxonasi VCL (Vizual Component Library) bilan birgalikda yetkazib beradi. Bu kutubxona eng murakab ilovalarni qurish uchun mo'ljallangan 100 dan ortiq takroran qo’llanilmaydigan komponentalardan iborat Kutubxonaning asosiy komponentalari Palitralar komponentalarining Instrumental Panehda berilgan. Komponentalar
belgilari dasturingiz shakliga (formaga) olib o’tiladi. Kutubxona Windows operatsion tizmlaridagi Foydalanuvchi Grafik Interfeysi standart interfeys obektlarining to’liq inkapsulatsiyalanishini o’z ichiga oladi. Ular orasida, ixtisoslashgan komponentalar bilan bir qatorda, relatsion ma’lumotlar bazasini boshqarish uchun mo’ljallangan komponentlar alohida o’rin egallaydi. Ishonchli va samarali dasturlarni yaratishda C + + Builder OYD imkoniyatlaridan to iiq foydalaniladi. C + + Builder - bu OMD ekan, OLE (OCX) boshqaruvchi elementlarni kiritish uncha qiyinchilik tug'dirmaydi. O'z masalalaringiz talablarini kerakli darajada qondirish uchun, kutubxonaning mavjud komponentalaridan foydalaning va hosila komponentalar imkoniyatlarini kengaytiring. C ++ Builder ning bosh xususiyati, avvalambor, uning dasturni visual ishlash jarayonida nafaqat tayyor komponentalardan foydalanish, balki yangi komponentalarni yaratish qobiliyatida ham namoyon bo‘ladi. Yangi komponentalar, dastlabki komponentalar kabi, sodda boiishi mumkin. bunda ularning funksional imkoniyatlari ozgina kengaytirilgan yoki o‘zining mutlaqo o'ziga xos ko'rinishi, xulq-atvori va kodining mazmuni bilan farqlanadigan boiadi. Komponentalarning yaratilishi OYD ning vorislik mexanizmiga tayanadi, cheklanishlarga deyarli ega bo’lmaydi hamda quyidagi bosqichlardan o’tadi: • mavjud komponenta turiga vorislik; • yangi xususiyatlar, metodlar va voqealarni aniqlash; • yaratilgan komponentani qayd etish. Qidirish oson boiishi uchun, Palitra funksional jihatdan o'xshash komponentalarni birlashtiradigan qo‘shimcha ilovalar bilan bogiangan. Tanlab olingan komponentaning kontekst menyusini unga sichqonchaning o'ng tugmasini bosib ochish mumkin. Bular ichidan OKyozuvli Button tugmasini, A yozuvli Label tugmasini osonlik bilan topish mumkin. Agar sahifada komponentalar juda ko'p bo'lsa, harakatlanuvchi tugmalar orqali o'ng va chapga panelni harakatlantirish orqali barcha komponentalarni ko'rishimiz mumkin. Barcha komponentalar biror nom yoki maxsus ikonka orqali berilgan, agar sichqoncha kursorini ikonka ustiga oborsak shu komponenta nomi paydo boiadi. E'tibor bergan boisangiz, ko'pchilik komponentalar to'rtburchak yoki dumaloq shaklga ega. Ixtiyoriy komponentani formaga ikki xil y o i bilan joylashtirish mumkin. Komponenta ustiga sichqonchani olib borib chap tugmasini ikki marta bossak, mazkur komponenta forma markazida paydo boiadi. Ikkinchi usul sichqoncha chap tugmasini komponenta ustida bitta bosib siljitish bilan formaga joylashtirish mumkin. Formaga joylashtirilgan komponentani formaning ixtiyoriy qismiga siljitishimiz mumkin. Komponetaning o'lchamlarini sichqoncha yordamida o'zgartirish mumkin. Formada turgan ixtiyoriy komponentani aktivlashtirish yoki passivlashtirish mumkin. Aktivlashtirish degani shu komponentaning ustida amal bajarish xususiyatini o‘zgartirish imkoniyatini beradi, buning uchun, mazkur komponentaning ustida sichqoncha tugmasini bosish kifoya. Aktivlik belgisi shu komponentaning boshqalaridan ajralib, belgilanib koi'inib turadi. Buni obyektlar inspektoridan ham ko‘rish mumkin. Sichqoncha yordamida tanlangan komponentani formadan o'chi rib tashlash mumkin.
Download 1.68 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling