logo

Integrallashgan programmalash muhitlari tarkibi va komponentalarini tahlil qilish

Yuklangan vaqt:

08.08.2023

Ko'chirishlar soni:

0

Hajmi:

32.4052734375 KB
Mavzu:   Integrallashgan programmalash muhitlari tarkibi  va
komponentalarini tahlil qilish.
                  
                                                                    Reja:
1)   Integrallashgan   dasturlash 	muhitlari ,	 	tarkibi	 	va	 	ularning
imkoniyatlari.
2) Integrallashgan	
 programmalash	 tizimlari.
3) Translyatorlar.Translyatorlar	
 turi	 va	 strukturasi.
1                             Integrallashgan	 programmalash	 tizimlari.
                     Hozirgi paytda programmalash  tizimlari  asosan integrallashgan (birlash-
gan)   shaklda   tashkil   qilinadi.   Bunday   tizimlarni   Turbo   Tizimlar   ham   deyiladi.
Aytib   o’tish   joyizki   SHEHM   turbo   rejimi   va   turbo   tizim   tushun-   chalari   bir   –
biridan katta farq qiladi.    
                    SHEHM   turbo   rejimi   uning   oddiy   rejimidan   farq   qiladi.   Bu   farq   takt
chastotasi bilan bog’liq.(takt:prosessorning har bir komandasi bitta yoki bir nechta
takt mobaynida bajariladi). Yani Turbo rejimida takt chastotasi (M Hz,G Hz) ancha
ko’tariladi.
         Turbotizim - integrallashgan tizim bo’lib programmani tayyorlash, taxlash va
natija   olish   uchun   tahrirlovchi,translyator,   aloqalarni   tashkil   qiluvchi   modul
cheklovchi   va   yordamchi   qism   sistemalar   yagona   kompleks(majmua)   si-   fatida
tashkil   qilingan.   Tizim   bilan   ish   menyu-muloqat   shaklida   olib   boriladi.   Turbo
tizimlar   150-350   kb   qo’shimcha   xotirani   talab   qiladi.   Turbo   tizimlardan   Turbo
Pascal,   Turbo   Ci,   Turbo   assemblerni   keltirish   mumkin.   Turbo   tizimlar   asosida
yangi   programmalash   muhitlari(visual,   obektga   mo’ljallangan,   case-
texnologyalar) ishlab chiqilgan.
                                                       
2     Translyatorlar turi	 va	 strukturasi.
         Yuqori darajali (C, C++, Java, Phyton, …) yoki quyi darajali (assembly tillar)
dasturlash tillarida yozilgan kodlarni mashina tiliga o'tkazish  uchun ishlatiladigan
programmalar —   translyatorlar deb ataladi.
Translyatorlarning 3 xil turi mavjud:
1) Assembler
2) Kompilyator
3) Interpretatoryator
            Assembler   bu quyi darajali  dasturlash tillarida yozilgan kodni  mashina tiliga
o'giruvchi   translyatorlardir.   Bu   jarayonlar   assmblatsiya   (assembling)   deb
nomlanadi.
    
  Kompilyator   va   interpretatorlar   esa   yuqori   darajli   dasturlash   tillarida   yozilgan
kodlarni mashina tiliga o'giruvchi translyatorlardir. Bu jarayonlar kompilatsiya va
interpretatsiya deb nomlanadi.
   	
   IDE (integrallashgan   ishlovchi   muhit)   –   Har   bir   dasturlash   tilida   o‘z   ishchi
muhiti   bo‘ladi.   Bu   muhitda   kompilyator   bilan   birga   kod   yozishimiz   uchun
mo‘ljallangan joy bo‘ladi. Bu ishchi muhitda bir necha dastur kodlarini ham yozsa
bo‘ladi   va   bu   muhit   avtomatik   xatolarni   ham   bizga     ko‘rsatib   beradi.   Ishchi
muhitda   ma’lum   kutubxonalar   joylashgan   bo‘lib,   kod   yozishda   kodni   to‘g‘ri
tashkil   qilish   uchun   ma’lum   bir   kodni   to'g'ri     tashkil   qiluvchi   yordamlar   ekranga
chiqadi. Ishchi muhitga oddiy bloknot misol qilib olsak bo‘ladi, lekin bu muhitning
kompilyatori   yo‘q,   shuning   uchun   alohida   kompilyator   o'rnatishimiz   lozim,   2   ta
dastur   o‘rnatib   bir-biriga   moslashtirishimiz   kerak   bo‘ladi.   Bu   2   ishni
3 yengillashtirish   uchun,   juda   ko‘p   ishchi   muhit   dasturlari   ishlab   chiqilgan   va   ular
kompilyatorlar bilan integrallashgan bo‘ladi.
  C++ dasturlash muhitida eng keng tarqalgan IDE bu –   Visual C++	 hisoblanadi .
Bu   dastur   o‘z   ichiga     quyidagilarni   oladi:   dastur   kodlarini   yozishda   juda   muhim
bo‘lgan   .NET   klasslari,   ishchi   muhit   va   albatta   kompilyator   integrallashtirilgan
bo‘ladi.  
        Kompilatsiya   bu   dasturlash   tilida   yozilgan   kodni   mashina   tushunadigan
tilga   to'g'ridan-to'gri   o'girish   jarayoni.   Mashina   tiliga   o'giruvchi   programma
esa   kompilyator   deb nomlanadi. Kompilyator butun kodni bir vaqtda skan qiladi va
agar   kodda   xatoliklar   bo'lsa   koddagi   barcha   xatoliklarni   ko'rsatadi,   agar   xatolik
bo'lmasa uni ishga tushiradi. Kompilyatorga misollar: javac (Java kompilyatori), c
(C kompilyatori), cpp (c++ kompilyatori)
 	
    Dev-C++   —   C/C++   dasturlash   tillari   uchun   ochiq   integrallashgan   dasturlash
muhiti. Bu distributivga MinGW nomli kompilyator kiradi. Bu dastur o‘zi Delphi
dasturlash   tilida   tuzilgan.   GPL   litsenziyasi   orqali   tarqatiladi.   Bir   paytlar   Linux
versiyasi   ham   mavjud   edi,   hozir   faqat   Windows.   Hozir   yangi   versiyalari   ishlab
chiqilmayapti, uning o‘rniga wxDev-C++ nomi bilan ishlab chiqilmoqda.  
 	
     C++	 Builder   –   C++   dasturlash   tili   uchun   mo‘ljallangan   integrallashgan
dasturlash   muhiti   hisoblanadi.   Dastlab   Borland   Software   korxonasi   tomonidan
ishlab chiqilgan, undan so‘ng uning bir qismi bo‘lgan CodeGear  tomonidan. C++
Builder   STL,   VCL,   CLX,   MFC   ob’yekt   kutubxonalarini   o‘z   ichiga   oladi.   Delphi
dasturlash  tili  tomonidan  ishlab  chiqilgan. Bu  muhit  drag-and-drop  harakati   bilan
vizual   shaklni   paydo   qilishi   mumkin,   undan   tashqari   WYSIWYG   redaktori   ham
mavjud.  
4      Borland	 C++   — C/C++ dasturlash tillarida dastur tuzish uchun mo‘ljallangan
muhit   bo‘lib,   Borland   firmasi   tomonidan   ishlab   chiqilgan.   Muhitning   har   bir
versiyasi   ma’lum   bir   dasturlash   tili   standarti   asosida   ishlovchi   kompilyator   bilan
integrallashgan   holda   chiqarilgan.   Dastlab,   DOS   operatsion   tizimi   muhitida
ishlovchi   dasturlarni   yaratish   uchun,   keyinchalik   Windows   muhitida   ishlovchi
dasturlarni yaratish uchun mo‘ljallangan versiyada ishlab chiqildi.  
 	
   Microsoft	 Visual	 C++   — Albatta Microsoft firmasi ham bekor turmadi. Mana
shu muhitni yaratdi. C++ dasturlash tili  uchun mo‘ljallangan va Microsoft  Visual
Studio ni bir qismi  sifatida yoki o‘zi yakka Visual  C++ Express  Edition shaklida
namoyon bo‘ldi. Microsoft QuickC muhitini almashtirish vazifasini bajardi.  
 	
    GNU	 Compiler	 Collection(GCC)   – GNU proyekti asosida yaratilgan, xar hil
turdagi dasturlash tillarining kompilyatorlar yig‘indisi hisoblanadi. Bu dastur ochiq
hisoblanadi   va   dastlab   faqat   S   uchun   yaratilgan   edi.   Keyinchalik   kuchayib   C++,
Objective-C, Java, Fortran va Ada dasturlash tillari uchun ham ishlab chiqildi.  
          	
Kompilyatsiya-   juda ko'p qirrali jarayon deb hech qiyinchiliksiz ayta olamiz.
          Kompilyatsiyaning     bir necha turlari mavjud. To'plamlarni yig'ish ishning bir
nuqtasida   bir   nechta   manba   modullarida   amalga   oshiriladi.   Tizma-bosqich
kompilyatsiyasi izohlash bilan bir xil (har bir keyingi bayonni bosqichma-bosqich
mustaqil   tuzish   lozimligi).   Hali   hamon   shartli   kompilyatsiya   mavjud.   Bunday
holda,   tarjima   qilingan   matn   dastlabki   dasturda   kompilyator   ko'rsatmalarida
ko'rsatilgan shartlarga bog'liq bo'ladi. Ma'lum bir doimiy qiymatni o'zgartirishimiz,
dastur   matni   qismining   tarjimasini   kiritishimiz   yoki   o'chirishni   sozlashimiz
mumkin.
5         Dasturchilar   uchun   dasturlashda   qulay   sharoit   yaratish   uchun   turli   xil   yuzaga
keladigan     muammolarni   hal   qilish,ularni   to'g'irlash     uchun   eng   qulay   va
moslashtirilgan   kompilyatorlardan   foydalaniladi.   Agar   ular   tasniflangan   holda
bo'lsa,   unda   bunday   yordam   dasturlarining   bir   nechta   turlarini   ajratishimiz
mumkin.
     
      Vektorli kompilyator   -   manba   kodini   vektor   protsessorlariga   moslab,
kompyuterning kompyuter kodiga aylantiradiradigan kompilyator .
        Moslashuvchan	
 kompilyator   -   modulli   printsip   asosida   ishlab   chiqilgan
hisoblanadi.   Uni   boshqarishni   jadvallar   bo'yicha   amalga
oshiramiz.   Moslashuvchan	
 kompilyator   yuqori darajadagi tilda dasturlashtirilgan.
Buni kompilyator kompilyatori yordamida ham amalga oshirishimiz mumkin.
        Bosqichma-bosqich
 kompilyator   -   bu   dastur   qismlarini   va   unga
qo'shimchalarni   qayta   eshittiradi   va   butun   dasturni   qaytadan   yozish   paytida   esa
istisno qilinadi, ya'ni qabul qilmaydi.
       Tarjimon yoki bosqichma-bosqich tuzuvchi dastur, har bir alohida bayonot yoki
buyruq   uchun   mustaqil   kompilyatsiyani   ketma-ket   bajarish   printsipidan
foydalanamiz.
        Qaysi   dasturlash   tili   uchun   rasmiy   tavsifni   idrok   eta   oladi.   Mustaqil   holda
ma'lum bir til uchun kompilyatorni yaratishga qodir.
          Tuzatish   tuzuvchisi   ba'zi   sintaksis   xatolarini   mustaqil   ravishda   tuzatishi
mumkin hisoblanadi.
          Rezident	
 kompilyatorga     tezkor   xotirada   doimiy   joy   ajratilgan   bo'ladi,   va   u
keng vazifalar tomonidan qayta ishlatilganda mavjud bo'ladi.
6 O'z-o'zidan tuzadigan kompilyatorlar mavjud. Ular translyatsiya sodir bo'lgan tilda
yozilgan bo'ladi.
Umumjahon kompilyato r-   ushbu   kompilyator   kirish   tilining   semantikasi   va
sintaksisining   rasmiy   tavsifiga   asoslanadi.   U   yadrodan,   sintaktik   va   semantik
yuklovchilardan iborat bo'ladi.
          Linux	
 platformasi	 uchun	 yadro	 kompilyatorlari ,   kompilyatorlardan
foydalanadigan eng keng tarqalgan, ommabop vazifalardir. Ushbu operatsiya bizga
uskunalarni   muvofiqlashtirish   va   platformaning   eng   maqbul   versiyasini
o'rnatishimiz bilan bog'liq ko'plab muammolarni hal qilishimizga imkon beradi.
          Java	
 kompilyatsiyasi   i   turli   xil   platformalarda   ishlaydigan   kompilyatorlar
yordamida   amalga   oshiriladi.   Bu   bizga   turli   ishlab   chiqaruvchilarning   operatsion
tizimlarining ehtiyojlari uchun dastlabki kodni qayta ishlashimizga imkon beradi.
          Interpretatsiya   jarayonida   esa   dasturlash   tilida   yozilgan   kod   mashina   tiliga
to'g'ridan-to'gri   o'girilmaydi . Uning o'rniga boshqa bir programma kodni o'qiydi va
uni   ishga   tushiradi.   Ya'ni   o'rtada   bir   boshqa   programma   vositachi   bo'lib   turadi.
Usha   vositachi   programmaga   interpretator   deyiladi.   Misol   uchun   siz   kodda   «+»
amalini   bajarmoqchi   bo'lsangiz,   interpretator   siz   kodda   yozgan   «+»   amalini
o'zining   versiyasi   bilan   almashtiradi   va   so'ngra   uni   mashina   tiliga   o'giradi.
Interpretator kodni satrma-satr skan qiladi va agar biror satrda xatolik bo'lsa darhol
xatolikni  ko'rsatadi  va  skan  qilishni   tohtatadi,  agar   satrda xatolik  bo'lmasa  darhol
usha satrdagi kodni ishga tushiradi. Interpretatorlarga misollar: Ruby, Phyton, GW
Basic.
—   Ba'zi   interpretatorlar   o'zining   vazifasini   bajarish   bilan   birga   kompilyator
vazifasini   ham   bajarishi   mumkin.   Ya'ni,   bir   vaqtda   ikkita   ishni   qilishi   mumkin.
7 —   Interpretator   orqali   erishilgan   natijaga,   kompilyator   orqali   ham   erishish
mumkin.   Kompilyator   orqali   erishilgan   natijaga,   interpretator   orqali   ham   erishish
mumkin
Afzalliklari va kamchiliklari.
—   Kompilatsiya   jarayoni   interpretatsiyaga   nisbatan   tezroq   kechadi,   chunki   u
tog'ridan-tog'ri mashina tiliga o'giriladi.
—   Interpretatorlari   yaratish   onsonroq,   chunki   yaxshi   kompilyator   yaratish   juda
qiyin.
— Interpretatorlar kompilyatorlarga nisbatan portativroq.
— Kompilyator katta hajm talab qiladi, interpretator esa kamroq.
                               Translyatorlarning	 ishlash	 prinsiplari.
                 Birinchi sxemada (a) programma to’liq tarjima qilinadi va keyin bajariladi.
Ikkinchi(b) xemada esa,programma qadamma-qadam tarjima qilinadi va bajariladi.
Birinchi   sxema   asosida   tashkil   qilingan   va   ishlaydigan   translyatorlar
kompinsyatsyalanuvchi   (ya’ni   komplyatorlar)   translyatorlar   va   ikkinchi   sxemad-
agi   translyatorlar   interpretatsiyalanuvchi   (yani   interpretatorlar)   translyatorlar
deymiz.
      
  Interpretatorlar (masalan beysik, lion, refal) va komplyatorlar (PL/1, Pascal, Cu)
o’ziga   xos   qulaylik   va   kamchiliklarga   ham   ega   .   Interpretatorlar   sodda   tashkil
qilinadi   va   programmani   tarjima   qilish   va   bajarish   jaroyonida   xotirada   bo’lishi
zarur.   Komplyatorlar   murakkab   bo’lsa   ham   programmani   tarjima   qi-   lingandan
keyin (.exe, .obj fayllar) operativ xotirada bo’lishi shart emas.
8      
   Translyatorlarning yana bir turi assembler yoki zagruzchik (yuklovchi) deyiladi.
Ularning kirish tipi mashina yoki mashinaga mo’ljallangan tiplar geruhiga kiradi.
Bu   tillar   yordamida   programma   tuzishda   katta   tezkorlikka   (programmani
mashinada bajarish nuqtai nazardan) erishiladi , ammo pro- grammani loyihalash
(ishlab   chiqish)   murakkablashadi,   chunki   biz   program-   mani   har   bir   kichik
detalini asoslashimiz kerak.
      Dasturlash   —   kompyuterlar   va boshqa mikroprotsessorli elektron mashinalar
uchun   dasturlar   tuzish, sinash va o zgartirish jarayonidan iborat. Odatda dasturlash	
ʻ
yuqori   saviyali   dasturlash   tillari   ( PHP ,   Java ,   C++ ,   Python   )   vositasida   amalga
oshiriladi. Bu dasturlash tillarining semantikasi odam tiliga yaqinligi tufayli dastur
tuzish jarayoni ancha oson kechadi.
     
       Dasturlash 1) elektron mashinalarda masalalarni yechish hamda ularda har xil
akdiy   mehnat   turlarini   bajarish   na-zariyasi   va   usullarini   ishlab   chi-qish   bilan
shug ullanadigan   fan;   algo-ritmlar   nazariyasining   amaliy   bo limi;   insonning	
ʻ ʻ
mashina   bilan   aloqa   qilish   vositasi.   Asosiy   vazifalaridan   biri   elektron   mashinalar
uchun programma (dastur) tuzish usullari, ularni tekshirish va takomillashtirishdan
iborat.   Yechilishi   lozim   bo lgan   masala   algoritmi   Dasturlashda   „mashina   tili“ga	
ʻ
o tkaziladi.	
ʻ
                Dasturlash   —   bevosita   dasturlash   va   avtomatik   dasturlashga   bo linadi.	
ʻ
Bevosita   Dasturlashda   programmaning   umumiy   sxemasini   ishlab   chiqishdan
9 kodlash va mashi-naga kiritishgacha bo lgan barcha ishni programmachi bajaradi.ʻ
Avtomatik  dasturlashda   esa   programmachi   faqat   programma   sxemasini   tuzib,  uni
qisqartirilgan   simvolik   kurinishda   yozadi,   profamma   tuzish   va   uni   kodlash   kabi
texnikaviy   ishlarni   esa   mashinaning   o zi   maxsus   dasturlash   programmasi	
ʻ
yordamida bajaradi.
                 Dasturlash   jarayoni,  odatda,  quyidagi  bos-qichlarga  bo linadi:   masalaning	
ʻ
qo yilishi;   masalaning   algoritmik   tavsi-fini   tuzish;   masalani   yuqori   darajadagi	
ʻ
programma   tilida   Dasturlash;   masalani   taxminiymashina   tilida   Dasturlash;
masalani mashina tilida Dasturlash
         
               Dasturlash tili programmalar tuzishning asosiy vositasidir. Bu tillar konkret
mashina   komandalari   sistemasiga   boglits   bo lmasligi   va   iboralar   struktu-rasi	
ʻ
jihatidan   umumiy   xususiyatga   ega   bo lishi   bilan   boshqa   tabiiy   tillarga   o xshab	
ʻ ʻ
ketadi. Iboralar ikki turga   — operatorlar hamda tavsiflarga bo linadi, ularning bir-	
ʻ
biri   bilan   bog liqligi   qavslar   bilan,   alohidaligi   nukali   vergul   bilan   ajratiladi.	
ʻ
Operator tilning amal birligi bo lib, o z navbatida, o zgaruvchan kattalikka qiymat	
ʻ ʻ ʻ
beruvchi   operatorlar,   shartga   muvofiq   tegishli   hisoblash   tarmog ini   tanlovchi	
ʻ
(shartli)   operator   va   takroriy   hisobni   amalga   oshiruvchi   sikl   ope-ratorlariga
bo linadi.   Tavsifda   o zga-ruvchan   kattalik   va   boshqa   belgilar   xususiyatlari	
ʻ ʻ
yoziladi.   Biror   xususiy   masalani   yechish   uchun   tuzilgan   programmani   simvolik
ravishda   funksional   belgilash   mumkin.   Bunday   belgilash   va   tavsif   birgalikda
kichik   programma   deb   yuritiladi.   Yangi   programmalar   tuzishda   kichik
programmalardan tayyor holda foydalanish mumkin.
              Juda   ko p   dasturlash   tillari   (algol-60,   q.	
ʻ   Algol ),   muhandislik   va   ilmiy
masalalarni  yechish  uchun fortran, iqtisodiy hisoblashlar  uchun kobol, matematik
10 modellar uchun si mula, tako-millashgan algol-68, PL/I yaratildi. Ularning har biri
uchun   shu   tillarda   ifodalangan   masalalarga   qarab   mashina   programmasini
avtomatik   tarzda   qaytatuzuvchi   translyatorlar   mavjud.   Taxminiy   mashina   tili
ikkilik   sistemadan   ko ra   yanada   qulayroq   simvollarda   ifodalangan   mashinaʻ
komandalari   terminlaridagi   programmalar   bo lib,   bunda   ko pincha,   yuqori	
ʻ ʻ
darajadagi til sifatida blok sxemalardan foydalaniladi.
                  Dasturlashning   programma   tuzilgandan   keyingi   yana   bir   asosiy   bosqichi
„tekshirish“   (otladka)   bo lib,   bunda   yo l   qo yilgan   xatolar   topiladi   va   tuzatiladi.	
ʻ ʻ ʻ
Programmalar   kodlanadi   va   mashinaga   maxsus   qurilma   yordamida   kiritiladi.
Amaliyotda   Dasturlashning   yangi   va   tezkor   usullari   bor   (2004);   2)   matematik
dasturlash   —   amaliy   matematikaning   bir   bo limi;   umumiy   ma noda	
ʻ ʼ   —   biron-bir
funksiya fo(x) ning ekstremumini (qarang   Ekstremum ) topish masalasi tushuniladi.
  Integrallashgan   dasturlash	
 muhitlari ,	 tarkibi	 va	 ularning	 imkoniyatlari.
Integratsiyalashgan   dasturlash   muhiti   (Integrated   Development   Environment   -
IDE),   shuningdek ,   birlashgan   dasturlash   muhiti   -   dasturchilar   tomonidan   dasturiy
ta'minotni   ishlab   chiqish   uchun   foydalaniladigan   dasturiy   vositalar   to'plamidir.
Integratsiyalashgan   dasturlash   muhiti   quyidagilarni   o'z   ichiga   oladi:
matn   muharriri ,
Translyator(kompilyator   va   /   yoki   interpritator),Yig’ishni   avtomatlashtirish
vositalari ,Tuzatuvchi(otladchik).
Ko'pgina   zamonaviy   IDE-lar ,   shuningdek,   ob'ektga   yo'naltirilgan   dasturiy
ta'minotni   ishlab   chiqishda   foydalanish   uchun   sinf   brauzeri ,   ob'ekt   inspektori   va
sinf iyerarxiyasi diagrammasini o'z ichiga oladi.
11 Integratsiyalashgan dasturlash muhiti (Integrated Development Environment
- IDE), shuningdek, birlashgan dasturlash muhiti - dasturchilar tomonidan dasturiy
ta'minotni   ishlab   chiqish   uchun   foydalaniladigan   dasturiy   vositalar   to'plamidir.
Integratsiyalashgan   dasturlash   muhiti   quyidagilarni   o'z   ichiga   oladi:
matn   muharriri,Translyator(kompilyator   va   /   yoki   interpritator),Yig’ishni
avtomatlashtirish vositalari,Tuzatuvchi(otladchik).
Ko'pgina   zamonaviy   IDE-lar,   shuningdek,   ob'ektga   yo'naltirilgan   dasturiy
ta'minotni   ishlab   chiqishda   foydalanish   uchun   sinf   brauzeri,   ob'ekt   inspektori   va
sinf   iyerarxiyasi   diagrammasini   o'z   ichiga   oladi.
     
 	
        
12            Linux	 operatsion	 tizimi(versiyalari,afzallik	 va	 kamchiliklari).
Biz   ushbu   saxifamizda   Linuxning   asosiy   afzalliklari   va   kamchiliklarini   sanab
o'tamiz.
Linux  operastion  tizimi   distributivlari  mutlaqo  bepul  tarqatiladi   va yangi   chiqqan
utilitlar   va   dasturlar   ham   shular   jumlasidandir.   Linux   operastion   tizimiga   egalik
qilish   huquqi   xech   kimga   berilmagan.   U   erkin   tarqatiladi.   Linux   distributivlari
uchun   qo'shimcha   yangiliklar ,   dasturlar,   utilitlar   dunyodagi   ko'pgina
dasturlovchilar   birlashgan   forum   va   loyixalarda   ishlab   chiqiladi.
Windows   operastion   tizimida   biror   bir   xato   yoki   kamchilik   paydo   bo'lsa   uni
faqatgina   Microsoft   kompaniyasining   o'zigina   to'g'rilay   oladi   va   faqatgan   rasmiy
saytdan   uning   yangilangan   paketlarini   yuklab   olish   mumkin.   Linux
operastion   tizimida xato yuzaga kelsa , uni dasturchilar forumi yordamida bartaraf
etish   mumkin.   Buning   sababi   Linux   ochiq   kodli   operastion   tizim,   Windows   esa
yopiq kodli operastion tizimligidadir.
Linux   ni   faqat   dasturchilar   yoki   moxir   foydalanuvchilar   uchun   yaratilgan
operatsion   tizimi   deb   o'ylovchilar   qattiq   yanglishadi.   Chunki   xozirgi   kunga   kelib
oddiy   foydalanuvchilar   uchun   qo'l   keladigan        KDE,	
 GNOME,	 Unity   kabi   grafik
muxitlar   mavjud.  Ular   yordamida   turli   xil   darajadagi   foydalanuvchilar   operastion
tizimida ishlashlari mumkin.
Windows muxitida ishlab o'rgangan foydalanuvchi Linux operastion tizimi  grafik
muxitiga   moslashishi   qiyin   kechishi   aniq   chunki   unda   menyular   va   boshqa
yarliklar   odatiy   joyda   joylashmagan.   Xuddi   shunday   Linux   grafik   interfeysida
ishlab   o'rgangan   foydalanuvchi   Windows   muxitiga   moslashishi   qiyin   kechadi   va
bir qancha noqulayliklarga duch kelishi aniq.
                                                 
13                                    
                                                XULOSA
  Xulosa   o'rnida   shuni   aytmoqchimanki,   dastur   va   dasturlash   hozirda   inson
hayotining   ajralmas   qismiga   ajralib   bo'lgan.   Shuning   uchun   dasturlash   sohasini
chuqur   o'rganish   kerak   ekanligini   angladim.Dasturlash   tillarini   o'rganish   esa
bundan ham kerakli va qiziqarlidir. Umuman olganda dasturlash inson hayotini va
u bajaradigan mehnatni maksimal darajada osonlashtiradi. Dasturni optimallash esa
yozilgan dasturni  eng  yaxshi,eng  qisqa,  eng  maqbuk variantga  keltirishdir.Bu  esa
izga juda ulkan imkoniyatlar beradi.
14 Foydalanilgan adabiyotlar
1. “Yuksak   ma’naviyat   yengilmas   kuch”.   Islom   Abdudg’anievich
Karimov Toshkent  2008.
2. “O’zbekiston XXI asr bo’sag’asida”. Islom Abdudg’anievich Karimov.
Toshkent  2000.
3.   “Havfsizlik   va   barqaror   taraqqiyot   yo’lida”.   Islom   Abdudg’anievich
Karimov. Toshkent  2004.
4. Культин Н. Б. Самоучитель C++ Builde
5. О . Д . Вальпа  - Borland C++ Builder.  Экспресс-курс – 2006
6. Самоучительпрограммирования C++
7. Самоучитель   программирования   на   языке   С++   в   системе   С+
+Build
8. Федоренко   Ю.П.   -   Алгоритмы   и   программы   на   C++   Builder
(Профессиональная серия для программистов) – 2010
Internet manbalari:
1. www.cyber-form.ru
2. www.wikipedia.org
3. www.programmer.com   
4. W3schools.com
5. Tutorial.com
6. Edx.org.com
15

Mavzu: Integrallashgan programmalash muhitlari tarkibi va komponentalarini tahlil qilish. Reja: 1)   Integrallashgan   dasturlash  muhitlari ,   tarkibi   va   ularning imkoniyatlari. 2) Integrallashgan  programmalash  tizimlari. 3) Translyatorlar.Translyatorlar  turi  va  strukturasi. 1

                            Integrallashgan  programmalash  tizimlari. Hozirgi paytda programmalash tizimlari asosan integrallashgan (birlash- gan) shaklda tashkil qilinadi. Bunday tizimlarni Turbo Tizimlar ham deyiladi. Aytib o’tish joyizki SHEHM turbo rejimi va turbo tizim tushun- chalari bir – biridan katta farq qiladi. SHEHM turbo rejimi uning oddiy rejimidan farq qiladi. Bu farq takt chastotasi bilan bog’liq.(takt:prosessorning har bir komandasi bitta yoki bir nechta takt mobaynida bajariladi). Yani Turbo rejimida takt chastotasi (M Hz,G Hz) ancha ko’tariladi. Turbotizim - integrallashgan tizim bo’lib programmani tayyorlash, taxlash va natija olish uchun tahrirlovchi,translyator, aloqalarni tashkil qiluvchi modul cheklovchi va yordamchi qism sistemalar yagona kompleks(majmua) si- fatida tashkil qilingan. Tizim bilan ish menyu-muloqat shaklida olib boriladi. Turbo tizimlar 150-350 kb qo’shimcha xotirani talab qiladi. Turbo tizimlardan Turbo Pascal, Turbo Ci, Turbo assemblerni keltirish mumkin. Turbo tizimlar asosida yangi programmalash muhitlari(visual, obektga mo’ljallangan, case- texnologyalar) ishlab chiqilgan. 2

Translyatorlar turi  va  strukturasi. Yuqori darajali (C, C++, Java, Phyton, …) yoki quyi darajali (assembly tillar) dasturlash tillarida yozilgan kodlarni mashina tiliga o'tkazish uchun ishlatiladigan programmalar — translyatorlar deb ataladi. Translyatorlarning 3 xil turi mavjud: 1) Assembler 2) Kompilyator 3) Interpretatoryator Assembler bu quyi darajali dasturlash tillarida yozilgan kodni mashina tiliga o'giruvchi translyatorlardir. Bu jarayonlar assmblatsiya (assembling) deb nomlanadi. Kompilyator va interpretatorlar esa yuqori darajli dasturlash tillarida yozilgan kodlarni mashina tiliga o'giruvchi translyatorlardir. Bu jarayonlar kompilatsiya va interpretatsiya deb nomlanadi.        IDE (integrallashgan ishlovchi muhit) – Har bir dasturlash tilida o‘z ishchi muhiti bo‘ladi. Bu muhitda kompilyator bilan birga kod yozishimiz uchun mo‘ljallangan joy bo‘ladi. Bu ishchi muhitda bir necha dastur kodlarini ham yozsa bo‘ladi va bu muhit avtomatik xatolarni ham bizga ko‘rsatib beradi. Ishchi muhitda ma’lum kutubxonalar joylashgan bo‘lib, kod yozishda kodni to‘g‘ri tashkil qilish uchun ma’lum bir kodni to'g'ri tashkil qiluvchi yordamlar ekranga chiqadi. Ishchi muhitga oddiy bloknot misol qilib olsak bo‘ladi, lekin bu muhitning kompilyatori yo‘q, shuning uchun alohida kompilyator o'rnatishimiz lozim, 2 ta dastur o‘rnatib bir-biriga moslashtirishimiz kerak bo‘ladi. Bu 2 ishni 3

yengillashtirish uchun, juda ko‘p ishchi muhit dasturlari ishlab chiqilgan va ular kompilyatorlar bilan integrallashgan bo‘ladi. C++ dasturlash muhitida eng keng tarqalgan IDE bu – Visual C++  hisoblanadi . Bu dastur o‘z ichiga quyidagilarni oladi: dastur kodlarini yozishda juda muhim bo‘lgan .NET klasslari, ishchi muhit va albatta kompilyator integrallashtirilgan bo‘ladi. Kompilatsiya bu dasturlash tilida yozilgan kodni mashina tushunadigan tilga to'g'ridan-to'gri o'girish jarayoni. Mashina tiliga o'giruvchi programma esa kompilyator deb nomlanadi. Kompilyator butun kodni bir vaqtda skan qiladi va agar kodda xatoliklar bo'lsa koddagi barcha xatoliklarni ko'rsatadi, agar xatolik bo'lmasa uni ishga tushiradi. Kompilyatorga misollar: javac (Java kompilyatori), c (C kompilyatori), cpp (c++ kompilyatori)       Dev-C++ — C/C++ dasturlash tillari uchun ochiq integrallashgan dasturlash muhiti. Bu distributivga MinGW nomli kompilyator kiradi. Bu dastur o‘zi Delphi dasturlash tilida tuzilgan. GPL litsenziyasi orqali tarqatiladi. Bir paytlar Linux versiyasi ham mavjud edi, hozir faqat Windows. Hozir yangi versiyalari ishlab chiqilmayapti, uning o‘rniga wxDev-C++ nomi bilan ishlab chiqilmoqda.        C++  Builder – C++ dasturlash tili uchun mo‘ljallangan integrallashgan dasturlash muhiti hisoblanadi. Dastlab Borland Software korxonasi tomonidan ishlab chiqilgan, undan so‘ng uning bir qismi bo‘lgan CodeGear tomonidan. C++ Builder STL, VCL, CLX, MFC ob’yekt kutubxonalarini o‘z ichiga oladi. Delphi dasturlash tili tomonidan ishlab chiqilgan. Bu muhit drag-and-drop harakati bilan vizual shaklni paydo qilishi mumkin, undan tashqari WYSIWYG redaktori ham mavjud. 4

     Borland  C++ — C/C++ dasturlash tillarida dastur tuzish uchun mo‘ljallangan muhit bo‘lib, Borland firmasi tomonidan ishlab chiqilgan. Muhitning har bir versiyasi ma’lum bir dasturlash tili standarti asosida ishlovchi kompilyator bilan integrallashgan holda chiqarilgan. Dastlab, DOS operatsion tizimi muhitida ishlovchi dasturlarni yaratish uchun, keyinchalik Windows muhitida ishlovchi dasturlarni yaratish uchun mo‘ljallangan versiyada ishlab chiqildi.      Microsoft  Visual  C++ — Albatta Microsoft firmasi ham bekor turmadi. Mana shu muhitni yaratdi. C++ dasturlash tili uchun mo‘ljallangan va Microsoft Visual Studio ni bir qismi sifatida yoki o‘zi yakka Visual C++ Express Edition shaklida namoyon bo‘ldi. Microsoft QuickC muhitini almashtirish vazifasini bajardi.       GNU  Compiler  Collection(GCC) – GNU proyekti asosida yaratilgan, xar hil turdagi dasturlash tillarining kompilyatorlar yig‘indisi hisoblanadi. Bu dastur ochiq hisoblanadi va dastlab faqat S uchun yaratilgan edi. Keyinchalik kuchayib C++, Objective-C, Java, Fortran va Ada dasturlash tillari uchun ham ishlab chiqildi.       Kompilyatsiya- juda ko'p qirrali jarayon deb hech qiyinchiliksiz ayta olamiz. Kompilyatsiyaning   bir necha turlari mavjud. To'plamlarni yig'ish ishning bir nuqtasida bir nechta manba modullarida amalga oshiriladi. Tizma-bosqich kompilyatsiyasi izohlash bilan bir xil (har bir keyingi bayonni bosqichma-bosqich mustaqil tuzish lozimligi). Hali hamon shartli kompilyatsiya mavjud. Bunday holda, tarjima qilingan matn dastlabki dasturda kompilyator ko'rsatmalarida ko'rsatilgan shartlarga bog'liq bo'ladi. Ma'lum bir doimiy qiymatni o'zgartirishimiz, dastur matni qismining tarjimasini kiritishimiz yoki o'chirishni sozlashimiz mumkin. 5