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
www.ziyouz.com kutubxonasi
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.
www.ziyouz.com kutubxonasi
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;
www.ziyouz.com kutubxonasi
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.
|