Dasturiy vositalar - Axborot tizimlari nazariy asoslari magistratura mutaxassisliklari uchun o

102
Dasturlash tillari sintaksisi va semantikasining tahlili shuni
ko„rsatadiki, ularning turdosh konstruktsiyalari asosan «tashqi
ko„rinishi» bilan farqlanadi (kalit so„zlarni terish yoki tashkil etuvchilar
ketma-ketligi). Mazmuni, ayrim farqlanishlarni
hisobga olmaganda,
deyarli bir xil. Shuday qilib, zamonaviy tillar konstruktsiyasi umumiy
mazmunga (semantika), tashkil etuvchilar turli ketma-ketligiga
(sintaksis) va turli kalit so„zlar (leksika)ga ega. Demak, turli tillar
foydalanuvchiga bir xil imkoniyatli tashqi ko„rinishi bilan farqlanuvchi
dasturlarni taqdim etadi.
Hozirgi kunda dasturlash tillarini standartlashtirish masalalarini
ISO/
ANSI komiteti amalga oshiradi,
ammo uning faoliyati asosan
tillarning talabga javob bermagan sintaktik kengaytirilishiga qaratilgan.
Mavjud bo„lgan kamchiliklarni yo„qotish uchun dasturlash
tillarining sintaktik va semantik standartlashtirishni berish usullari taklif
qilindi.
Til ixtiyoriy konstruktsiyasining semantik bayoni kamida uchta
asosiy qismni o„z ichiga olishi zarur:
tashkil etuvchilar (komponentlar) ro„yxati (
Ko‘rsatkich Turida bu
tashkil etuvchilar
Tur nomi va
Asos Tur);
har bir tashkil etuvchining bayoni;
konstruktsiyaning yaxlit bayoni.
Sintaktik bayon etish uchun odatda konstruktsiyaning formal
bayoni
ishlatiladi, masalan, BNF ko„rinishida. Sintaktik bayon,
Algoldan
boshlab, har qanday tilda mavjud.
Dasturlashning rivojlanishida ko„plab dasturlash tillari ichida uchta
juftlik katta rol o„ynadi:
Algol-60 va
Fortran, Paskal va
Si, Java va
Si++.
Bunday juftliklarga bo„lish, ulardagi maqsadlarning bir-biriga qarama-
qarshi rivojlanishiga imkon yaratdi.
Muhimi dasturlash tilini va tadbiq qilinishini ajratish. Til –
dasturning sintaksisi va semantikasini aniqlovchi qoidalar to„plami,
ya‟ni yozuvlar tizimidir. Tilni qo„llash –
yuqori darajali yozuvni
mashina buyruqlari ketma-ketligiga almashtiruvchi dastur. Tilni
qo„llashning ikki usuli mavjud: kompilyatsiya va interpretatsiya.
Kompilyatsiyada maxsus ishchi dastur (kompilyator) ishchi dasturni
unga ekvivalent bo„lgan mashina kodiga almashtirishni va keyinchalik
ma‟lumotlar bilan birga uning bajararilishini ta‟minlaydi.
Interpretatsiya usulida maxsus dastur (interpretator), ma‟lumotlarga
buyruqlarni qo„llagan holda, til va mashina kodlari o„rtasida moslik
103
o„rnatadi. Har qanday dasturlash tili interpretatsiyalanuvchi va
kompilyatsiyalanuvchi bo„lishi mumkin, ammo ko„pgina hollarda
qo„llash usullariga ko„ra o„zining ustunliklariga ega. Hozirgi kunda
ixtiyoriy mavjud bo„lgan til bilan ishlay oluvchi
universal kompilyator
mavjud emas. Bu yagona semantik omborning mavjud emasligi bilan
tushuntiriladi.
Zamonaviy dasturlash tillari bir biriga o„xshash bo„lganligi bilan,
ularning mosligi to„liq emas. Quyidagi rasmda dasturlash tillarining
kesishish va birlashish sohalari keltirilgan.
Shunday qilib, barcha dasturlash tillariga tegishli bo„lgan (yoki
ularning ko„pchiligiga tegishli) umumiy semantik va berilgan til uchun
spesifik konstruksiyalarni o„z ichiga olgan birlashish sohasi mavjud. Shu
sababli, universal kompliyatorni ikki usul bilan yaratish mumkin:
1. Umumiy konstruksiyalarni qo„llash (
kesishish sohasi), tillar
spesifik konstruksiyalarini (
birlashish sohasi) chiqarib tashlash. Bu
barcha dasturlash tillarini «birlashtirishga» olib keladi.
2. Mavjud bo„lgan barcha konstruksiyalardan foydalanish (kesishish
va birlashish sohalari). Bunday yondashuv qo„shimcha manbalardan
foydalanishga va semantik omborning sezilarli darajada kengayishiga
olib keladi.
104
Ko„p yillardan buyon dasturlash nimaligi
haqida tortishuvlar
bo„lmoqda – fan, san‟at yoki ishlab chiqarish jarayoni. Axborot
texnologiyalarining yuzaga kelishi bilan dasturlash sanoat darajasida
birinchi o„ringa chiqadi:
talablar tahlili;
spesifikatsiyalarni ishlab chiqish;
loyihalash;
maketlashtirish;
boshlang„ich matnini yozish;
sozlash;
hujjatlashtirish;
testdan o„tkazish va kuzatish.
Bu yo„nalish bilan birga izlanuvchilik dasturlashi yo„nalishi ham
rivojlanmoqda. Masalan, E.Raymond tomonidan taklif etilgan o„zi
tashkillashtiruvchi, anarxik dasturlash «bozor» nomini olgan. Uning
farqlanuvchi tomoni, aniq rejaning mavjud emasligi, loyihani minimal
boshqarish, tashqi masofaviy uzoqlashgan ishlab
chiquvchilar sonining
ko„pligi, kod va g„oyalarning erkin almashinuvi.
Dasturiy muhitlar axborot texnologiyalarining alohida masalalari va
amallarini bajaradi. Ular qatoriga quyidagilarni kiritish mumkin:
matn protsessorlari:
Microsoft Word, Leksikon, Lotus Word Perfect,
Corel Word Pro, Sun Star Office Writer va boshqalar;
105
elektron jadvallar:
Microsoft Excel, Corel Quattro Pro, Lotus 1-2-3, Sun
Star Office Calc va boshqalar;
shaxsiy axborot tizimlari:
Microsoft Outlook, Lotus Organizer, Lotus
Notes, Sun Star Office Schedule va boshqalar;
taqdimot grafikasi dasturlari:
Microsoft Power Point, Lotus Freelance
Graphics, Corel Presentations, Sun Star Office Impress va boshqalar;
brauzerlar:
Microsoft Internet Explorer, Netscape Navigator, Opera va
boshqalar;
web-sahifa redaktorlari:
Microsoft Front Page, Netscape Composer,
Macromedia Free Hand va boshqalar;
pochta mijozlari:
Microsoft Outlook, Microsoft Outlook Express,
Netscape Messenger, The Bat va boshqalar;
rastorli grafika redaktorlari:
Adobe Photoshop, Corel Photo-Paint va
boshqalar;
vektorli grafika redaktorlari:
Corel Draw, Adobe Illustrator va
boshqalar;
stolli nashr tizimlari:
Adobe Page Maker, Quark Xpress, Corel
Ventura, Microsoft Publisher va boshqalar;
ishlab chiqish vositalari:
Borland Delphi, Microsoft Visual Basic,
Borland C++ Builder, Microsoft Visual C++ va boshqalar.