Dasturiy vositalar
Axborot texnologiyalarining dasturiy vositalarini ikkita katta
guruhga bo„lish mumkin: asos va amaliy.
Asos dasturiy vositalar axborot texnoloigiyalari anjomiy oqimiga
tegishli va o„z ichiga quyidagilarni oladi:
operatsion tizimlarlar;
dasturlash tillari;
dasturiy muhitlar;
berilganlar bazasini boshqarish tizimlari (BBBT).
Amaliy dasturiy vositalar kompleks masalalarni yoki turli predmet
sohalarida alohida masalalarni yechish uchun mo„ljallangan.
Operatsion tizimlar EHM manbalari va bu manbalar foydalanayotgan
jarayonlarni boshqarish uchun mo„ljallangan. Hozirgi kunda operatsion
tizimlar rivojlanishining ikki yo„nalishi mavjud: Windows va Unix. Bu
operatsion tizimlar quyidagicha rivojlangan:
CP/M QDOS 86-DOS MS-DOS Windows
Multics UNIX Minix Lunix
O„z navbatida qatorning har bir elementi o„z rivojlanish yo„liga ega.
Masalan, Windows quyidagi tartibda rivojlangan: Windows 95, 98, Me, NT,
2000, XP. Mos ravishda Linux quyidagicha rivojlangan: 0.01, 0.96, 0.99,
1.0, 1.2, 2.0, 2.1, 2.1.10 talqinlari. Har bir talqin yangi funksional
imkoniyatlarni qo„shish (tarmoq vositalari, turli protsessorlarga
yo„naltirilganlik, ko„p protsessorli konfiguratsiyalar va h.k.) bilan
farqlanadi.
Ko„pchilik dasturlash tillari (Si, Paskal) XX asrning 60-70-yillari
oralig„ida yaratilgan (Java dan tashqari). O„tgan davr mobaynida yangi
dasturlash tillari yaratildi, ammo amaliyotda ular keng tarqalmadi.
Zamonaviy dasturlash tillarining rivojlanishida boshqa yo„nalish, –
avvalgi dasturlarining ustunliklarini o„zida birlashtirgan, universal
tillarini yaratishga harakat bo„ldi (Algol, PL/1, Ada). Grafik interfeysli
shaxsiy kompyuter va operatsion tizim (masalan, Mac OS, Windows) ning
yaratilishi dasturiy ta‟minot ishlab chiquvchilar e‟tiborini tarmoq
protokollari, berilganlar bazalarini vizual yoki obyektga yo„naltirilgan
dasturlash muhitiga birlashtirishga qaratdi. Bu shunga olib keldiki,
hozirgi kunda anjomiy muhit sifatida aniq dasturlash muhiti (Delphi,
Access va boshqalar) qo„llaniladi va dasturlash tilining negiz bilimlarini
bilish talab qilinmaydi. Shu sababli, dasturlash tilidan foydalanuvchilar
doirasi barqarorlashib bormoqda.
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.
|