C++ DASTURLASH TILINING MOBIL KOMPLIYATORLARI, ULARNING IMKONIYATLARI VA KAMCHILIKLARI

Загружено в:

28.11.2024

Скачано:

1

Размер:

1.3 MB
MAVZU:  C++ DASTURLASH TILINING MOBIL KOMPLIYATORLARI, 
ULARNING IMKONIYATLARI VA KAMCHILIKLARI .
REJA:
KIRISH
1. Kampilyatorlar nima?
2. Mobil kampilyatorlar haqida
3. Mobil kampilyatorlarning imkoniyatlari
4. Mobil kampilyatorlarda dastur yozish
5. Mobil kampilyatorlarning kamchiliklari
XULOSA
FOYDALANILGAN ADABIYOTLAR
1 Kirish
C++   dasturlash   tili   haqida.   Butun   dunyoda   informatika   va   axborot
texnologiyalarining   rivojlanishi   bilan   bir   qatorda   dasturlash   asoslari   ham   keng
rivojlanib   bormoqda.   Dasturlash   asoslarifanining   asosi   bo’lmish   dasturlash   tillari
ham   keng   ommalashib   bormoqda.   Birinchi   EHM   yaratilgan   davrdan   boshlab
dasturlash   ham   rivojlanib   bormoqda,dastlabki   kompyuterlar   AQSH   da   harbiy
maqsadlar   yo’lida   yaratilgan.   Dastlabdasturchilar   eng   sodda   mashina   tilini   o’zida
ifodalovchi kompyuter komandalari bilan ishlaganlar. Bu komandalar uzun qatorli
nol   va   birlardan   iborat   bo’lgan.   Keyinchalik   foydalanuvchi   uchun   tushunarli
bo’lgan assembler tili yaratiladi.  Undan keyin tillar rivoji jadallashishni boshladi.
Keyinchalik   sekin   asta   yuqori   bosqichli   tillar   yaratila   boshlandi,   yuqori   bosqichli
algoritmik   tillarda   dasturni   foydalanuvchi   tushunadigan   ma‘lum   bir   standartlar
yordamida   yaratiladi.   Yuqori   bosqichli   algoritmik   tillarda   tuzilgan   dasturlarrni
kompyuter   tiliga   maxsus   interpretator   va   komplyatorlar   yordamida   o’tkazilardi.
Elektron   xisoblash   mashinalari   avlodlari   rivojlanib   borishi   bilan   bir   vaqtda   ham
dasturlash va dasturlash tillari ham keskin rivojlandi. Dasturlash tillarida tuzilgan
dastur   tarkibidagi   bo’yruqlarning   soddaligi   va   kompyuter   xotirasidan   kam   joy
egallashi bilan katta farq qiladi. Yuqoridagi jarayonlarni hisobga olib dasturlashga
ham   talablar   o’zgarib   bordi,   nafaqat   dasturlashni   balki   dastur   yozish   uchun   ham
texnologiyasini   ham   o’zgarishiga   olib   keldi.   Dasturlash   asoslari   fani   bu   elektron
hisoblash   mashinalarining   boshqaruvchi   fan   deb   ham   yuritish   mumkin.   Chunki
elektron   hisoblash   mashinalarining   asosi   bo’lmish   dasturiy   ta‘minotlar   ham
insoniyat tomonidan ma‘lum bir qoida va buyruqlar asosida yaratiladi Ayni vaqtda
bir   nechta   dasturlash   tillari   mavjud   ulardan   keng   qo’llaniladigan   va   barcha
imkoniyatlari   keng   bo’lganlari   C++,   Java,   PHP   va   hakozalar   sanaladi.   So’ngi
yillarda   Java   va   C++   dasturlash   tillari   juda   takomillashib,   tobora   ommalashib
bormoqda.  
2 Mavjud tillar katta 2 ta guruhga bo`linadi:
1)   Tabiiy   tillar .   Bu   odamlar   o`zaro   muloqotda   bo`ladigan   tillar   (o`zbek,   qozoq,
ingliz va hokazo).
2)  Sun‘iy tillar . Sun‘iy tillar yaxshigina kodlangan bo`ladi. Shuning uchun masala
dasturini masala kodi ham deyishadi.
Kodlash 2 xil maqsadda amalga oshiriladi:
a)   katta   hajmdagi   ma‘lumotlarni   qisqacha   ifodalash   maqsadida.   Masalan,
Samarqand   davlat   universitetining   kodi   -   SamDU,   Davlat   test   markazning   kodi
DTM,   oziq-ovqat   mahsulotlari,   yengil   sanoat,   og`ir   sanoat,   ta‘lim   dargohlarining
nomlari   ham   ularning   kodlardir.   Odamlarning   ismlari,   hatto   laqablari,   masalan,
xo`jayin,   sarimsoq   piyoz,   baqaloq,   lampa   shisha,   novcha   va   hokazolarning
barchasi kodlangan ma‘lumotlardir. 
b)   maxfiylikni   saqlash   maqsadida.   Bunday   usulda   kodlangan   ma‘lumotlarni
hamma ham tushunavermaydi. Faqat tor doiradagi odamlargina tushunadi. Maxfiy
holda kodlashning ham har xil usullaridan foydalaniladi. 
Barcha   dasturlash   tillari   ham   sun‘iy   tillar   jumlasiga   kiradi   va   ularning   ijrochisi
kompyuterlardir. Ularda ham  har bir buyruq qandaydir  fikrning kodi  hisoblanadi.
Masalan, a%2=0 yozuvini kompyuter ―a juft son  deb, abs(x) yozuvini esa |x| deb‖
tushunadi   va   hokazo.   Shuning   uchun   dasturlash   tillarini   yaratish   uchun   qilingan
dastlabki   harakatlardayoq   keng   omma   bu   tillarni   tezroq   o’zlashtirib   olishi   uchun
biror tabiiy tilning so’zlaridan mumkin qadar kam foydalanishga harakat qilingan.
Biz   yuqori   darajali   dasturlash   tillaridan   biri   bo‗lgan   C++   dasturlash   tili   bilan
tanishamiz. C++ dasturlash tili 1980 yillar boshida Byarne Straustrup tomonidan C
tiliga   asoslangan   tarzda   tuzildi.   C   dasturlash   tili   1972-yil   Denis   Pitch   va   Brayan
Kornegilar   tomonidan   yaratilgandi.   C++   juda   ko’p   qo’shimchalarni   o’z   ichiga
olgan, lekin eng asosiysi  u obyektlar bilan dasturlashga imkon beradi. Dasturlarni
tez va sifatli yozish hozirgi kunda katta ahamiyatga ega. 
3 1. Kampliyatorlar nima? 
"Dasturlashda   kompilyator"   deyilganda,   umumiy   ravishda   dasturlarning   yozilgan
kodini,   ya'ni   dastur   muallifining   yozgan   tilda   yozilgan   kodini,   o'zgartirib   yopiq
(masalan, asosiy ma'lumot tilda) kodga o'zgartirish uchun ishlatiladigan dasturlash
vositasi tushuniladi.
Kompilyator, dastur kodini o'zgartirib yopiq kodga o'tkazish operatsiyasini amalga
oshiradi.   Ushbu   operatsiya   natijasida   olingan   yopiq   kod,   qurilma   (kompyuter,
smartfon   yoki   boshqa   qurilma)   tomonidan   ishga   tushiriladi   va   dastur   amalga
oshiriladi.
Kompilyatsiya jarayoni quyidagicha o'tadi:
1.   Kod   yozish   (Source   Code):   Dastur   muallifi   dastur   kodini   tanlangan   dasturlash
tili (masalan, C++, Java, Python) yoki skript tili orqali yozadi.
2.   Kompilyatsiya   (Compilation):   Dastur   muallifi   yozgan   kodni   tanlangan
kompilyator orqali o'zgartirib yopiq (asosiy ma'lumot tilda) kodga aylantiradi. Bu
jarayon "kompilyatsiya" deyiladi.
3. Ob'ekt faylini yaratish: Kompilyator natijadagi yopiq kodni ob'ekt fayl (masalan,
`.exe`   fayli   Windows   platformasida   yoki   `.out`   fayli   Unix/Linux   platformasida)
sifatida saqlaydi. Bu ob'ekt fayl, to'plangan yopiq kodni kompyuter tili orqali ishga
tushirish uchun shartnoma (executable file) hisoblanadi.
4. Ishga tushirish (Execution): Olingan ob'ekt fayli, o'z ichida yozilgan yopiq kodni
o'qib, u boshqa dasturlar va tizim resurslari bilan ishlab chiqiladi. 
4 Kompilyatorlar,   amaliy   hayotda   dasturlarni   ishga   tushirish   vaqti   davomida   bir
marta   ishlatiladi   va   tizimlar   uchun   iste'mol   qilish   uchun   yopiq   kod   yaratilgan
qurilmaga   o'rnatiladi.   Kompilyatorlar,   yozilgan   dastur   kodini   avtomatik   ravishda
tekshirib,  xatoliklarni  aniqlaydigan,   yopiq  kodni  generatsiya   qiladigan  va  natijani
saqlayadigan vosita sifatida xizmat qiladi.
5                   2. Mobil kampliyatorlar haqida
Mobil kompilyatorlar, mobil qurilmalarda (smartfonlar, planshetlar, smartwatchlar
va boshqa mobil qurilmalar) ishlab chiqilgan dasturlarni yaratish va ishga tushirish
uchun   mo'ljallangan   kompilyatorlar   hisoblanadi.   Ularning   asosiy   maqsadi,   dastur
muallifi   tomonidan   yozilgan   dastur   kodini,   mobil   qurilma   tilda   ishlovchi   yopiq
(asosiy   ma'lumot   tilda)   kodga   o'zgartirish   va   o'zlashtirishdir.   Kompilyatorlar,
dasturlarni   ishga   tushirish   jarayonlarini   avtomatlashtirish,   optimallashtirish,   va
mobil qurilmaga mos ravishda yopiq kod generatsiyasini ta'minlashadi.
Keng va aniq tushuncha:
Platformaga   Moslashtirish:   Mobil   kompilyatorlar,   qo'llangan   dastur   kodini   ishlab
chiqarilgan mobil qurilmaga mos ravishda yopiq koda o'zgartirish va uning ob'ekt
faylini   generatsiyalashadi.   Misol   uchun,   Android   uchun   Java   tilidagi   dasturlarni
yaratish uchun Java  kompilyatori va iOS uchun Swift  tilidagi dasturlarni yaratish
uchun Swift kompilyatori.
Optimalizatsiya:  Mobil   kompilyatorlar,  dastur   kodini   yozilgan  tilga  mos  ravishda
o'zgartirish   va   uning   ishlash   tezligini   oshirish   uchun   optimallashtiradi.   Bu,
energiya sarflarini minimalizatsiya qilish, dastur ishlashini tezlashtirish va boshqa
optimallashtirish muammolari orqali amalga oshiriladi.
Qurilma   Xususiyatlariga   Integratsiya:   Kompilyatorlar,   mobil   qurilma
funktsiyalariga   (kamera,   sensorlar,   GPS,   batareya   boshqaruvchi   va   h.k.)   mos
ravishda ishlovchi yopiq kod qo'shib chiqadi.
6 Energetika   Optimallashtirish:   Mobil   kompilyatorlar,   energetika   sarflarini
optimallashtirgan   dasturlarni   yaratishda   muhim   rol   o'ynaydi.   Bu,   qurilma
batareyasini tezroq bo'shatish va dasturni energiya samaradorligini oshirish uchun
kerak bo'lgan jarayonlarni amalga oshirish orqali amalga oshiriladi.
Tilni  (Programming Language)  Aniqlash:  Ko'p kompilyatorlar, mobil  qurilma tili
(masalan,   Java,   Kotlin,   Swift)   to'g'risida   aniqlashni   o'z   ichiga   oladi   va   shu   tilda
yozilgan dasturlarni o'zlashtirish uchun foydalaniladi.
Mobil   kompilyatorlar,   mobil   dasturlash   sohasida   dastur   mualliflari   va   ishlab
chiqaruvchilarga,   yozilgan   dasturlarni   avtomatik   ravishda   o'zgartirish   va   ishga
tushirishda yordam beradi.
P.S.   Bu   kampilyatorlarni   Android   qurilmalari   uchun   Play   market   ilovasidan,   Ios
qurilmalari uchun esa Appstore ilovasidan yuklab olish mumkin.
7 3. Mobil kampliyatorlarning imkoniyatlari
Mobil kompilyatorlar, mobil dasturlarni yaratishda va ishga tushirishda bir qancha
afzalliklarga ega. Quyidagi keng tushuncha, bu afzalliklarni aniq tushuntiradi:
1. Platformaga   Moslashtirish:     Mobil   kompilyatorlar,   qo'llangan   dasturlash
tiliga   mos   ravishda   yopiq   kodni   generatsiyalash   va   dastur   kodini   mobil
qurilma   tili   orqali   o'zgartirish   imkoniyatiga   ega.   Misol   uchun,   Android
uchun Java kompilyatori va iOS uchun Swift kompilyatori.
1. Optimalizatsiya   va   Tezlik:   Mobil   kompilyatorlar,   dastur   kodini
optimallashtirish   va   ishlovchi   platforma   uchun   tezkor   yopiq   kodni
generatsiyalashda   ishlatiladi.   Bu,   dastur   ishlash   tezligini   oshiradi   va
foydalanuvchilarga yuqori darajada boshqaruvni ta'minlaydi.
2. Qo'llanma   O'lchovlari   va   Energetika   Optimallashtirish:   Mobil
kompilyatorlar,   dastur   kodini   energiya   samaradorligini   oshirish   uchun
optimallashtiradi. Bu, batareyaning uzun muddatda ishlashini ta'minlaydi va
dasturlarni kam energiya bilan ishlatishni o'z ichiga oladi.
3. Platforma   Xususiyatlarini   Ishlovchi:   Mobil   kompilyatorlar,   mobil   qurilma
xususiyatlariga   mos   ravishda   ishlovchi   yopiq   kodni   generatsiyalash
imkoniyatiga   ega.   Bu,   qurilma   funktsiyalaridan   foydalanish   va   boshqa
qurilma xususiyatlarini ishlatishda o'zlariga ta'sir ko'rsatadi.
8 4. Yaxshi Batafsil Xato Xabarlar: Kompilyatorlar, dastur muallifi uchun yaxshi
batafsil   xato   xabarlarini   generatsiyalashda   yordam   beradi.   Bu,   muallifga
yozilgan kodni tez va sodda tarzda tahlil qilishda yordam bera olishadi.
5. Platforma   Orqali   Tahlil   Qilish   va   Testlash   Imkoniyatlari:   Kompilyatorlar,
dasturlarni   ishga   tushirish   va   testlash   jarayonlarini   avtomatlashtirishda
yordam   beradi.   Bu,   dastur   mualliflari   uchun   qo'lda   boshqa   kompilyatsiya
variantlarini soddalashtiradi.
6. Tezkor   Vaqt   Sarflanishi:   Mobil   kompilyatorlar,   yozilgan   dasturlarni   mobil
qurilma uchun yopiq koda aylantirish jarayonini tezkor amalga oshiradi. Bu,
dastur mualliflari uchun yaxshi yaratish tezkorligini ta'minlaydi.
Mobil   kompilyatorlar,   mualliflarga   dasturlarini   qo'llashda,   optimallashtirishda   va
ishga   tushirishda   yordam   bermoqda.   Bu   afzalliklar,   mobil   dasturlash   sohasida
yuqori sifatli va samarali ishlashni ta'minlaydi.
9 4. Mobil kampliyatorlarda dastur yozish
C++  dasturlash  tili   kampilyatorlari   ham  ko’pchilikni  tashkil  qiladi. Hozir   ulardan
eng   mashhur   va   qulaylaridan   biri   “Coding   C++”   dastur   kampilyatori   haqida
gaplashamiz. 
Dasturni Play Marketdan yuklab olishimiz kerak. Keyin ilovalar bo’limidan dastur
ustida bosib uni ishga tushiramiz. Dasturni Play Marketdan yuklab olishimiz kerak.
Keyin ilovalar bo’limidan dastur ustida bosib uni ishga tushiramiz. 
10    
Dasturni ishga tushirganimizda u yuqoridagidek ko’rinishda bo’ladi.
Dastur ochilganda dastlab oddiy shablon kod keltirilgan bo’ladi.
11 Dastur ochilganda birinchi dasturni yuqoridagi  RUN  tugamasini bosish orqali 
ishga tushirishimiz mumkin. Dastur to’g’ri yozilgan bo’lsa ( sintaktik jihatdan ) 
dastur to’g’ridan to’g’ri ishlaydi ( lekin mantiqiy xatolarni topib bera olmaydi ).
Agar yozilgan kodda biror xatolik bo’ladigan bo’lsa dastur uni RUN tugmasi 
bosilgandan keyin ko’rsatib beradi.
12 Dasturga   yangi   kod   yozish   uchun   telefon   klaviaturasi   va   dastur   pastki   qismida
joylashgan   maxsus   belgilar   bilan   orqali   amalga   oshirish   mumkin.   Maxsus
belgilarni yuqoridagi rasmlarda keltirilgan.
Kampilyatorda kod yozish, uni ishlatish va xatoliklarni tekshirish uchun 
misollar ko’rib chiqamiz:
C++ dasturlash tili orqali karra jadval (multiplication table) tuzish uchun 
quyidagi dastur misoli keltirilgan. Ushbu dastur, istalgan sonni ko'rsatilgan 
oraliqdagi karra jadvalini chiqaradi:
Yuqoridagi suratlarda C++ dasturlash tilidan yozilgan karra jadvalni hosil chiqarib
beruvchi   dastur   ko’rsatilgan.   Dastlab   kod   xato   yozilgan   edi.   Xato   holatda   kod
13 kampilyatsiya   qilinsa   dastur   xatolik   beradi   va   qayerda   xatolari   borligini   ham
ko’rsatib beradi. Ko’rsatmalarga e’tibor berib xatoliklarni to’g’irlashimiz mumkin.
Ushbu dastur jadvalni chiqaradi, misol uchun, 1 dan 10 gacha bo'lgan sonlar 
uchun.  Ko’rsatmalar orqali dasturdagi xatoliklar to’g’irlandi va RUN tugmasi 
orqali kampilyatsiya qilinadi. Natijada chap suratdagidek karra jadval hosil 
bo’ladi. Bu kodni keyinchalik ishlatish uchun saqlab qo’yish ham mumkin. 
14  5. Mobil kampliyatorlarning kamchiliklari
Mobil   kompilyatorlarning   kamchiliklari   quyidagi   muammolardan   iborat   bo'lishi
mumkin:
1. Dastur   Ko'chirish   Tizimi:     Har   bir   mobil   tizim   o'zining   o'ziga   xos
kompilyator   va   o'z   tuzilmalarini   qo'llab-quvvatlaydi.   Bu,   mualliflarga
boshqa   tizimlarda   va   platformalarda   dastur   ko'chirishni   mushak   tizimlari
bo'lmagan holda tekshirib ko'rishga imkon beradi.
2. Qurilma   Mahsulotlarining   Xususiyatlari:   Har   bir   mobil   qurilma   o'zining
xususiyatlari   va   qo'llaniladigan   til   va   platformalar   orqali   dastur   yozishni
talab   qiladi.   Bunday   kamchiliklar,   dastur   mualliflari   uchun   qo'llaniladigan
dasturlar yaratishda qiyinchilik tugatadi.
3. Platforma Farqlari:   Android va iOS platformalari o'rtasidagi farqlar, dastur
mualliflariga   ikki   tizim   uchun   alohida   dastur   kodini   yozish   va   saqlashni
talab   qiladi.   Mobil   kompilyatorlar   shu   farqlarni   avtomatik   ravishda   yopiq
koda o'zgartirib berishda bir qancha muammolar paydo bo'ladi.
4. Batafsil   Xato   Xabarlar:   Kompilyatorlar,   mualliflarga   yozilgan   kodlarining
o'zlashtirilgan til orqali o'zgartirilib yopiq koda aylantirish paydo bo'lganda
batafsil   xato   xabarlarini   generatsiyalashda   kamchilik   tugatadi.   Bu   xatolar
o'zlashtirilgan kodni to'g'ri qilishda mualliflarga qiyinlik tugatadi.
5. Energetika   Sarflarini   Minimalizatsiya   Qilish:   Mobil   kompilyatorlarning
avtomatik energiya sarflarini optimallashtirishga ta'siri kam bo'lgan holatlar
paydo   bo'ladi.   Energetika   sarflarini   kamaytirish,   batareyaning   uzun
15 muddatda ishlashini   ta'minlashni   ta'minlashda  muhimdir  va  bu muammolar
mualliflarni xursand qilmaydi.
6. Yopiq Tilga Moslash: Mobil dasturlar o'zlariga xos til va qo'llanma turlariga
ega   bo'lishi   mumkin.   Bu   esa,   har   bir   tizim   uchun   alohida   dastur   yozishni
talab   qiladi   va   bu,   mualliflarga   qo'llaniladigan   va   o'zaro   moslashadigan
yozuvlar yaratishda qiyinlik tugatadi.
7. Yangi   Platformalarning   Qo'llanilishiga   Qaratilgan   Darajasizligi:   Yangi
qurilmalar   va   platformalar   chiqqanda,   ularning   qo'llanilishiga   qaratilgan
darajasizlik, eski va yangi kompilyatsiya vaqtida muammolarga olib kelishi
mumkin.   Bu   esa   yangi   mobil   kompilyator   versiyalari   va   platforma
yangilanishlari uchun tezroq va to'liq moslashtirilgan yozuvlar talab qiladi.
Shu   kamchiliklar,   dastur   mualliflariga   dasturlarini   har   bir   mobil   platformada
muvaffaqiyatli   boshqarishda   va   ishlatishda   muammolarni   hal   qilishda   qiyinchilik
tugatadi.
16 Xulosa:
Mobil kampilyatorlar afzallik yoki kamchiliklari haqida bir og’iz so’z bilan xulosa
chiqarib bo’lmaydi. Chunki yaxshi taraflari ko’p bo’lgan bu usulning kamchiliklari
ham   yetarlicha.   Albatta   prafessional   kampilyatorlar   dasturlash   sohasida
yuqorilaganimiz sari bizga zarur bo’lib boradi. Lekin boshlang’ich o’rganuvchilar
uchun mobil kampilyatorlar ham  katta yordam berishi mumkin. Ularda yetarlicha
kod   yozish   va   uni   ishga   tushiriish   imkoniyatlari   mavjud.   Ular   kichik   dasturlar
uchun yetarli   bo’lishi   mumkin. Qo’shimchasiga   mobil   qurilmalar   kampyuterlarga
qaraganda   qulayroq   ham   hisoblanadi.   Lekin   uzun   algaritmlar   va   murakkab
masalalarni   yechish   jaroyonidagi   hosil   bo’ladigan   uzundan   uzun   kodlar   uchun
kampyuter yoki nautbukda ishlatiladigan prafessional kampilyatorlar zarur bo’ladi.
Chunki unda ekran kattaroq ma’lumotlar bilan ishlash oson va qulay bo’ladi. Unda
xotira ko’proq bo’lishi va ma’lumot saqlash va tez ishlashi bilan bizga samaraliroq
kod   yozishimizni   ta’minlab   berishi   mumkin.   Boshlovchilarga   bular   shart
bo’lmasligi,   ularga   kichik   kod   va   ma’lumotlar   bilan   ishlash   hyetarli   bo’lishi
mumkin.   Shu   joyga   kelganda   mobil   kampilyatorlar   afzalligi   nomoyon   bo’ladi.   U
kod   yozish   uchun     arzon   va   qulay   vosita   hisoblanadi.   Demak   umumlashirib
aytadigan   bo’lsak   dasturlash   bilan   qaysi   darajasi   bialn   shug’ullanishimizga   qarab
biz   o’zimizga   mobil   kampilyator   tanlash   yoki   tanlamasligimiz   mumkin   ekan.
Albatta bu jaroyonda uning afzallik va kamchiliklariga e’tibor berish kerak!
17 Foydalanilgan adabiyotlar
1. S.Eshtemirov, F.M.Nazarov  “Algaritmlash va dasturlash asoslari”. 
Аlgoritmlash va dasturlash asoslari . O’quv qo’llanma –SamDU, 2018–yil, 
252- bet.
2. Qudrat Abdurahimov “C++ dasturlash tili”. O’quv qo’llanma
3. Борис Пахомов – С,С++ и MSVisua lC++ 2012 для начинoщих 2013.
4. Ivor Horton’s Beginning Visual C++Copyright © 2012 by Ivor Horton. С, 
С++ и MSVisualC++ 2010 для начинoщих .Петербург 2011.
5. Dotsent Rahmonqulova B.O “C++ da fumksiya va pradseduralar”.
Internet saytlari
1. https://dasturchi.uz - Dasturlashni o’rganish uchun sayt
2. www.google.com - Eng katta qidiruv tizimi
3. https://youtube.com - Platforma
4. https://chat.openai.com - Matnlarga asoslangan sun’iy intellekt
5. https://play.google.com - Kampilyatorlarni yuklash uchun 
6. https://docs.google.com - Matnlar bilan ishlovchi xizmat
7. https://www.youtube.com/watch?v=uMyaBs-EUZI
18

MAVZU: C++ DASTURLASH TILINING MOBIL KOMPLIYATORLARI, ULARNING IMKONIYATLARI VA KAMCHILIKLARI . REJA: KIRISH 1. Kampilyatorlar nima? 2. Mobil kampilyatorlar haqida 3. Mobil kampilyatorlarning imkoniyatlari 4. Mobil kampilyatorlarda dastur yozish 5. Mobil kampilyatorlarning kamchiliklari XULOSA FOYDALANILGAN ADABIYOTLAR 1

Kirish C++ dasturlash tili haqida. Butun dunyoda informatika va axborot texnologiyalarining rivojlanishi bilan bir qatorda dasturlash asoslari ham keng rivojlanib bormoqda. Dasturlash asoslarifanining asosi bo’lmish dasturlash tillari ham keng ommalashib bormoqda. Birinchi EHM yaratilgan davrdan boshlab dasturlash ham rivojlanib bormoqda,dastlabki kompyuterlar AQSH da harbiy maqsadlar yo’lida yaratilgan. Dastlabdasturchilar eng sodda mashina tilini o’zida ifodalovchi kompyuter komandalari bilan ishlaganlar. Bu komandalar uzun qatorli nol va birlardan iborat bo’lgan. Keyinchalik foydalanuvchi uchun tushunarli bo’lgan assembler tili yaratiladi. Undan keyin tillar rivoji jadallashishni boshladi. Keyinchalik sekin asta yuqori bosqichli tillar yaratila boshlandi, yuqori bosqichli algoritmik tillarda dasturni foydalanuvchi tushunadigan ma‘lum bir standartlar yordamida yaratiladi. Yuqori bosqichli algoritmik tillarda tuzilgan dasturlarrni kompyuter tiliga maxsus interpretator va komplyatorlar yordamida o’tkazilardi. Elektron xisoblash mashinalari avlodlari rivojlanib borishi bilan bir vaqtda ham dasturlash va dasturlash tillari ham keskin rivojlandi. Dasturlash tillarida tuzilgan dastur tarkibidagi bo’yruqlarning soddaligi va kompyuter xotirasidan kam joy egallashi bilan katta farq qiladi. Yuqoridagi jarayonlarni hisobga olib dasturlashga ham talablar o’zgarib bordi, nafaqat dasturlashni balki dastur yozish uchun ham texnologiyasini ham o’zgarishiga olib keldi. Dasturlash asoslari fani bu elektron hisoblash mashinalarining boshqaruvchi fan deb ham yuritish mumkin. Chunki elektron hisoblash mashinalarining asosi bo’lmish dasturiy ta‘minotlar ham insoniyat tomonidan ma‘lum bir qoida va buyruqlar asosida yaratiladi Ayni vaqtda bir nechta dasturlash tillari mavjud ulardan keng qo’llaniladigan va barcha imkoniyatlari keng bo’lganlari C++, Java, PHP va hakozalar sanaladi. So’ngi yillarda Java va C++ dasturlash tillari juda takomillashib, tobora ommalashib bormoqda. 2

Mavjud tillar katta 2 ta guruhga bo`linadi: 1) Tabiiy tillar . Bu odamlar o`zaro muloqotda bo`ladigan tillar (o`zbek, qozoq, ingliz va hokazo). 2) Sun‘iy tillar . Sun‘iy tillar yaxshigina kodlangan bo`ladi. Shuning uchun masala dasturini masala kodi ham deyishadi. Kodlash 2 xil maqsadda amalga oshiriladi: a) katta hajmdagi ma‘lumotlarni qisqacha ifodalash maqsadida. Masalan, Samarqand davlat universitetining kodi - SamDU, Davlat test markazning kodi DTM, oziq-ovqat mahsulotlari, yengil sanoat, og`ir sanoat, ta‘lim dargohlarining nomlari ham ularning kodlardir. Odamlarning ismlari, hatto laqablari, masalan, xo`jayin, sarimsoq piyoz, baqaloq, lampa shisha, novcha va hokazolarning barchasi kodlangan ma‘lumotlardir. b) maxfiylikni saqlash maqsadida. Bunday usulda kodlangan ma‘lumotlarni hamma ham tushunavermaydi. Faqat tor doiradagi odamlargina tushunadi. Maxfiy holda kodlashning ham har xil usullaridan foydalaniladi. Barcha dasturlash tillari ham sun‘iy tillar jumlasiga kiradi va ularning ijrochisi kompyuterlardir. Ularda ham har bir buyruq qandaydir fikrning kodi hisoblanadi. Masalan, a%2=0 yozuvini kompyuter ―a juft son deb, abs(x) yozuvini esa |x| deb‖ tushunadi va hokazo. Shuning uchun dasturlash tillarini yaratish uchun qilingan dastlabki harakatlardayoq keng omma bu tillarni tezroq o’zlashtirib olishi uchun biror tabiiy tilning so’zlaridan mumkin qadar kam foydalanishga harakat qilingan. Biz yuqori darajali dasturlash tillaridan biri bo‗lgan C++ dasturlash tili bilan tanishamiz. C++ dasturlash tili 1980 yillar boshida Byarne Straustrup tomonidan C tiliga asoslangan tarzda tuzildi. C dasturlash tili 1972-yil Denis Pitch va Brayan Kornegilar tomonidan yaratilgandi. C++ juda ko’p qo’shimchalarni o’z ichiga olgan, lekin eng asosiysi u obyektlar bilan dasturlashga imkon beradi. Dasturlarni tez va sifatli yozish hozirgi kunda katta ahamiyatga ega. 3

1. Kampliyatorlar nima? "Dasturlashda kompilyator" deyilganda, umumiy ravishda dasturlarning yozilgan kodini, ya'ni dastur muallifining yozgan tilda yozilgan kodini, o'zgartirib yopiq (masalan, asosiy ma'lumot tilda) kodga o'zgartirish uchun ishlatiladigan dasturlash vositasi tushuniladi. Kompilyator, dastur kodini o'zgartirib yopiq kodga o'tkazish operatsiyasini amalga oshiradi. Ushbu operatsiya natijasida olingan yopiq kod, qurilma (kompyuter, smartfon yoki boshqa qurilma) tomonidan ishga tushiriladi va dastur amalga oshiriladi. Kompilyatsiya jarayoni quyidagicha o'tadi: 1. Kod yozish (Source Code): Dastur muallifi dastur kodini tanlangan dasturlash tili (masalan, C++, Java, Python) yoki skript tili orqali yozadi. 2. Kompilyatsiya (Compilation): Dastur muallifi yozgan kodni tanlangan kompilyator orqali o'zgartirib yopiq (asosiy ma'lumot tilda) kodga aylantiradi. Bu jarayon "kompilyatsiya" deyiladi. 3. Ob'ekt faylini yaratish: Kompilyator natijadagi yopiq kodni ob'ekt fayl (masalan, `.exe` fayli Windows platformasida yoki `.out` fayli Unix/Linux platformasida) sifatida saqlaydi. Bu ob'ekt fayl, to'plangan yopiq kodni kompyuter tili orqali ishga tushirish uchun shartnoma (executable file) hisoblanadi. 4. Ishga tushirish (Execution): Olingan ob'ekt fayli, o'z ichida yozilgan yopiq kodni o'qib, u boshqa dasturlar va tizim resurslari bilan ishlab chiqiladi. 4

Загрузите документ, чтобы увидеть его полностью.