FOYDALANUVCHI INTERFESINI YARATISHDA VEZUAL TEXNALOGIYALARDAN FOYDALANISH
![FOYDALANUVCHI INTERFESINI YARATISHDA VEZUAL TEXNALOGIYALARDAN
FOYDALANISH
MUNDARIJA
Kirish…………………………………………………………………………… 3
1 - §. Foydalanuvchi interfeysi haqida umumiy ma’lumotlar ............................... . 6
1.1. Foydalanuvchi interfeyslari turlari va ularni ishlab chiqish
bosqichlari............................................................................................................ 6
1.2. Insonning axborotni idroki, xotiralashi va qayta ishlashi bilan bog’liq
psixofizik xususiyatlari............................................................................ 13
1.3 . Interfeysining f oydalanuvchi va dasturiy modeli…………….......... 17
1.4 . Muloqotlarning turkumlanishi va ularni ishlab chiqishning umumiy
tamoyillari ……………………………………………………………………… 21
2- §. Ilovalarda grafik interfeyslardan
foydalanish……………………………... 28
2.1. Foydalanuvchining grafik interfeysining asosiy komponentalari....... 28
2.2. Grafik foydalanuvchi interfeyslarida muloqotlarni amalga oshirish.. 33
2.3. To’g’ridan – to’g’ri monipulyatsiyali foydalanuvchi interfeyslari va
ularni loyihalash................................................................................................... 36
2.4. Foydalanuvchilar interfeyslarining inte le ktual elementlari ……........ 42
3-§. Delphi muhitida ilovalar yaratish va unda qulay interfeysni
tashkillashtirish.............................................................................................. 46
3.1. Delphi muhiti va foydalanuvchi bilan muloqotni tashkillashtirishda
qo’llaniladigan komponentlar………………………………………………….. 46
3.2. Delphi muhitida grafik interfeysni tashkil qilish va undan foydanish 49
Xulosa………………………………………………………………………….. 56
Ilovalar…………………………………………………………………………. 57
Foydalanilgan adabiyotlar……………………………………………………… 58](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_1.png)
![Kirish
Hisoblash texnikasi rivojlanishining oldingi bosqichlarida foydalanuvchi
interfeysi operatsion tizim bilan insonning muloqot vositasi sifatida qaralgan va
ular yetarlicha dastlabkisi hisoblanadi. U asosan buyruqni bajarish, yuklash, ular
bilan aniq ma’lumotlarni bog’lash va hisoblash texnikasi o’rnatishlarga xizmat
qiladigan qandaydir protseduralarni bajarish imkonini bergan. Texnik vositalarning
mukammallashuvi asosida maxsus foydalanuvchi interfeysiga ega interaktiv
dasturiy ta’minot yaratish imkoniyati paydo bo’ldi [4].
Hozirgi vaqtda asosiy muammolardan biri murakkab dasturiy maxsulotlarga
professional bo’lmagan foydalanuvchilar ishlatishiga mo’ljallangan interaktiv
interfeyslarni ishlab chiqish hisoblanadi. Oxirgi yillarda foydalanuvchining bunday
interfeyslarini yaratish bo’yicha asosiy konsepsiyalar shakllandi va ularni yaratish
metodikalarining bir nechtasi taklif etildi.
Mavzuning dolzarbligi . Hozirgi asr inson faoliyatining barcha sohalarini
avtomatlashtirish asridir. Shuning uchun ham zamonaviy axborot texnologiyalariga
va avtomatlashtirishning asosini tashkil etadigan yuqori sifatli dasturiy mahsulotlar
yaratishga katta e’tibor berilmoqda. Dunyodagi ko’pgina yetakchi davlatlarning
tajribalari shuni ko’rsatmoqdaki, dasturiy mahsulot yaratishdagi arzimagan
xatoliklar ham oxir oqibatda ishlab chiqarishdagi uzilishlarga va boshqa
kutilmagan vaziyatlarga olib kelishi mumkin.
Shuning uchun ham dasturiy mahsulotlar yaratish, ularni sozlash,
masalaning barcha holatlarini o’z ichiga olgan test masalalar yaratish va ular uchun
yaratilgan dasturiy mahsulotlarning ishonchliligini tekshirish ishlab chiqarish
jarayonlarini avtomatlashtirishda, qaralayotgan fizik jarayonlarning xususiyatlarini
to’liq ochishda ishlab chiqaruvchi va foydalanuvchiga yaratilgan qulayliklari
hisobiga katta iqtisodiy foyda keltirishi mumkin.
Masalaning qo’yilishi. Ushbu bitiruv malakaviy ishida foydalanuvchi
uchun mo’ljallangan grafik interfeys elementlar, qulayliklarni zamonaviy](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_2.png)
![programmalash texnologiyasi asosida tashkillashtirish masalasi muhokama
qilinadi. Interfeysning elementlarini(forma, boshqaruv elementlar va h.k) tashkil
etishning texnologik jarayoni namoyish etiladi. Aniq masalalarni yechish
jarayonida interfeysni tashkillashtirish bosqichlari dasturiy hal etiladi. Ish
natijalarini dasturiy tizimlarini loyihalash va o’qitishda qo’llash mumkin.
Ishning maqsadi. Ushbu bitiruv malakaviy ishida foydalanuvchi uchun
mo’ljallangan grafik interfeys elementlar, qulayliklarni zamonaviy programmalash
texnologiyasi asosida tashkillashtirish masalasi muhokama qilinadi.
Interfeysning elementlari(forma, boshqaruv elementlar va h.k) ni tashkil
etishning texnologik jarayoni namoyish etiladi.
Aniq masalalarni yechish jarayonida interfeysni tashkillashtirish bosqichlari
dasturiy hal etiladi.
Ishning vazifalari. Bitiruv malakviy ishda quyidagi vazifalar hal etilgan:
-dasturiy maxsulotlarga professional bo’lmagan foydalanuvchilar
ishlatishiga mo’ljallangan interaktiv interfeyslarni ishlab chiqish;
-foydalanuvchi interfeyslarini yaratishning asosiy konsepsiyalari va ularni
yaratish metodikalarini o’rganish;
-foydalanuvchi interfeyslarining turlari va ularni ishlab chiqish bosqichlari
tadqiq qilish;
- interfeysni loyihalashda inson psixofiziologik xususiyatlarini hisobga olish
prinsiplariga e’tibor qilish.
-dasturiy vositani yaratish.
Ishning ilmiy va amaliy ahamiyati. Mazkur ish foydalanuvchi grafik
interfeysini ishlab chiqish va amaliy dasturiy ta’minotini yaratish nuqtai nazaridan
amaliy va tеxnologik ahamiyatga ega. Unda dasturlashning vizual muhitlari va
qulayliklaridan foydalanib foydalanuvchining grafik interfeysli ilovalar yaratish
usul va mеxanizmlari yoritilgan. Shuningdеk, ishni o’quv-uslubiy ahamiyatli
jihatlari ham mavjud bo’lib, undan Windows uchun ilovalar yaratishda uslubiy
ko’rsatma sifatida ham foydalanish mumkin.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_3.png)
![Qo’llanilgan mеtod va tеxnologiyalar. Ishni bajarish jarayonida
foydalanuvchi interfeysini tashkil qilish usullari, bunda ranglarni to’g’ri tanlash,
forma elementlarini joylashtirish, menyularni shakllantirish prinsiplariga rioya
qilish, amaliy dasturlar bilan ishlash va yuqori darajali tillarda dasturlash
xususiyatlarini e’tibor olindi va foydalanildi.
Bitiruv malakaviy ish uchta paragraf, xulosa, adabiyotlar ro’yxati va
ilovalardan tuzilgan.
Birinchi paragrafda foydalanuvchi interfeyslari turlari va ularni ishlab
chiqish bosqichlari, insonning axborotni idrok etishi, xotiralashi va qayta ishlashi
bilan bog’liq psixofizik xususiyatlari, interfeysining f oydalanuvchi va dasturiy
modeli, m uloqotlarning turkumlanishi va ularni ishlab chiqishning umumiy
tamoyillari to’g’risida tushunchalar kеltirilgan. Ikkinchi paragrafda
foydalanuvchining grafik interfeysining asosiy komponentalari, grafik
foydalanuvchi interfeyslarida muloqotlarni amalga oshirish, to’g’ridan – to’g’ri
monipulyatsiyali foydalanuvchi interfeyslari va ularni loyihalash, foydalanuvchilar
interfeyslarining intelektual elementlarini yaratish muhokama qilingan. Uchinchi
paragrafda d elphi muhiti va foydalanuvchi bilan muloqotni tashkillashtirishda
qo’llaniladigan komponentlar, d elphi muhitida grafik interfeysni tashkil qilish va
undan foydanish dastur ilovasi va interfeysi yaratilgan. Xulosada asosiy natijalar,
adabiyotlar ro’yhatida ishlatilgan asosiy adabiyotlar va manbalar, oxiri ilovada esa
ishlab chiqilgan dasturning matnlari kеltirilgan.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_4.png)
![1-§. Foydalanuvchi interfeysi haqida umumiy ma’lumotlar
1.1. Foydalanuvchi interfeyslari turlari va ularni ishlab chiqish bosqichlari
Foydalanuvchi interfeysi- kompyuter bilan foydalanuvchining o’zaro
hamkorlikini ta’minlovchi dasturiy va apparat vositalar majmuasidan iborat.
Bunday o’zaro hamkorlikning asosini muloqot tashkil etadi. Ushbu holda muloqat
vaqtning real masshtabida amalga oshiriladigan va aniq masalani birgalikda
yechishga yo’naltirilgan inson hamda kompyuter o’rtasida axborotlarni
belgilangan tartibda almashish: axborotlar almashinish va harakatlarni o’zaro
muvofiqlashtirish tushuniladi[35]. Har bir muloqot foydalanvchi va kompyuter
aloqasini fizik ta’minlaydigan alohida kiritish–chiqarish jarayonlaridan iborat [1-
3].
Axborotlarni almashinish – xabarlarni uzatish va signallarni boshqarish
orqali amalga oshiriladi. Xabar – muloqotda axborotlarni almashinishda ishtirok
etadigan axborotning bir bo’lagi. Xabarlar quyidagi turlarga ajratiladi:
– kiritish xabarlari, bu kiritish vositalari: klaviatura, sichqoncha va h.k
yordamida inson tomonidan amalga oshiriladi.
– chiqish xabarlari, bu matn, ovozli signallar yoki tasvirlar ko’rinishda
kompyuter tomonidan beriladi, foydalanuvchiga monitor ekraniga yoki
axborotlarni chop etish va boshqa qurilmalariga chiqariladi(1.1-rasm).
Foydalanuvchi Terminal Kompyuter
Ovoz va chiquvchi
rasm xabarlar
Blokirovka
Harakat Kiruvchi
xabarlar
1.1-rasm. Foydalanuvchi va kompyuter o’rtasidagi muloqotni tashkil qilish
Foydalanuvchi asosan quyidagi turdagi xabarlarni amalga oshiradi, axborot
so’rovi, yordam so’rovi, amal yoki funksiya so’rovi, axborotlarni kiritish yoki Bajarilgan
xabar
Ishlov berish
So’rovlar
tahlili“ Eho”
chiqishi
Ekran
Klaviatura va
sichqonchaXabarlar
tahlili
Qabul qilingan
qaror
So’rovlar
amalga oshishi](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_5.png)
![o’zgartirish, kadrlar maydonini tanlash va h.k. U javobda quyidagilarni oladi:
javob talab qilmaydigan ko’rsatma yoki spravka, informatsion xabar, harakatni
talab etuvchi buyruqlar, javob harakatini talab etuvchi hatolar haqidagi xabarlar,
kadr formatini o’zgartirish va h. k.
Quyida kiritish chiqarish amallarini amalga oshirishni ta’minlovchi asosiy
qurilmalar keltirilgan.
Xabarlarni chiqarish uchun:
- Monoxrom va rangli monitorlar – tezkor matnli va grafik ma’lmotlarni
chiqarish;
- Printerlar – matnli va grafik axborotlarni “qattiq nusxasini olish”
- Grofopostroiteli – grafik axborotlarni qattiq nusxasini olish;
- Nutq sentizatorlari – ovozli chiqarish;
- Tovush generatorlari – musiqa va shu kabilarni chiqarish.
Kiritish xabarlari uchun:
- Klaviatura – matnni kiritish;
- Planshetlar – grafikli kiritish;
- Skaner – grafikli kiritish;
- Manipulyator, nurli qalam, boshqariluvchi oyna – ekranda axborotlarni
joylashtirish va tanlash.
Interfeyslarning turlari. Dasturlashtirishga protsedurali va obyektli
yondashuvga o’xshash interfeyslarni ishlab chiqishda protseduraga yo’naltirilgan
va obyektga yo’naltirilgan yondashuvlar farqlanadi(1.2-rasm).
Foydalanuvchi
interfeysi
Protseduraga
yo’naltirilgan
Menyu Erkin navigatsiyali
Primitivli To’g’ridan-to’g’ri
manupulyatorli Obyektga
yo’naltirilgan](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_6.png)
![1.2-rasm. Interfeys turlari
Protseduraga yo’naltirilgan interfeyslarda “protsedura va harakat”
tushunchalariga asoslangan foydalanuvchi bilan o’zaro hamkorlikning an’anaviy
modeli ishlatiladi. Bu model doirasida dasturiy ta’minot foydalanuvchiga mos
ma’lumotlarni aniqlash uchun qandaydir harakatlarni bajarish imkoniyatini va
natijada istagan natijalarni olish imkoniyatini beradi [5-8].
Obyektga yo’naltirilgan interfeyslarda predmet sohaning obyektlariga ishlov
berishga mo’ljallangan foydalanuvchi bilan o’zarohamkorlikning an’anaviy modeli
ishlatiladi. Foydalanuvchiga bu model doirasida har bir obyekt bilan to’g’ridan –
to’g’ri o’zarohamkorlik qilish imkoniyatini taqdim etadi va bir qancha obyektlarga
o’zaro hamkorlik qilish jarayonida amallarni bajarish amalga oshiriladi(1.1 –
jadval).
1.1 –jadval. Interfeys turlari va asosiy farqlari
Protseduraga yo’naltirilgan
foydalanuvchi interfeysi Obyektga yo’naltirilgan foydalanuvchi
interfaysi
Foydalanuvchiga masalani bajarish
uchun zaruriy funksyalar bilan
ta ’ minlaydi .
Masalaga e ’ tibor qaratiladi
Piktogrammalar ilova , oyna yoki
amallarni ifodalaydi .
Papka va spravochniklarning tarkibi
jadval va ro ’ yhatlar yordamida aks
ettiriladi . Foydalanuvchilarga obyektlar bilan
o ’ zaro hamkorlik qilish imkoniyatini
ta ’ minlaydi
Kirish ma ’ lumotlariga va natijalariga
e ’ tibor qaratiladi beriladi
Piktogrammalar obyektlarni ifodalaydi
Papka va spravochniklar ob ’ ektlarning
vizual konteyneri bo ’ ladi
Protseduraga mo’ljallangan interfeyslar 3 turga ajratiladi: “Primitivli”,
menyu va erkin navigatsiyali.
Primitivli interfeys deb – foydalanuvchi bilan konsol rejimda o ’ zaro
hamkorlik tashkillashtiriladigan interfeysga aytiladi . Odatda bunday interfeys
dasturiy ta ’ minot ishlashining aniq senariysida amalga oshiriladi , masalan :](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_7.png)
![ma ’ lumotlarni kiritish – masalani yechish – natijani chop etish (1.3 a – rasm ).
Bunday interfeys ta ’ minlaydigan ketma – ket jarayondan bir qancha ma ’ lumotlar
majmui bilan ishlash uchun sikllarni tashkillashtirish uchun yagona chetga chiqish
sodir bo ’ ladi (1.3 b – rasm ).
1.3 – rasm. Foydalanuvchi interfeysi dastur algoritmining tipik strukturasi:
a) chiziqli; b) takrorlanishga asoslangan
Hozirgi paytda bunday interfeyslar dasturlashni o’rgatish jarayonida yoki
butun dastur bitta funksiyani masalan ayrim tizimli utilitlarda ishlatiladi.
Menyuli interfeys primitivli interfeyslardan foydalanuvchiga dastur
tomonidan taqdim etiladigan maxsus ro’yhatdan zaruriy amallarni tanlash
imkoniyatini berish bilan farq qiladi. Bu interfeys foydalanuvchi tomonidan Yo’qHa Boshlash
Ma’lumotlarni
kiritish
Hisoblash
Natijalar
chiqishi
Tamomlash Yana
ma’lumot
?
b)Boshlash
Ma’lumotlarni
kiritish
Hisoblash
Natijalar
chiqishi
Tamomlash
a)](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_8.png)
![aniqlanadigan ishlash senariylar to’plamini va amallar ketma – ketligini amalga
oshirishni taqdim etadi.
Bir pog’onali va iyerarxik menyular farqlanadi. Birinchi ko’p bo’lmagan
hollarda (5-7 gacha) hisoblash jarayonlarini boshqarish uchun ishlatiladi va ular bir
xil tipdagi amallarni o’z ichiga oladi. Masalan, yaratish, ochish, saqlash, va h.k.
Ikkinchi – ko’p sonli hollar va ularning turli-tumanligi bilan farqlanib turadi,
masalan, fayllar ustida amallar, bu fayllarda saqlangan ma’lumotlar ustida
amallar.
Bu tipdagi interfeyslar dasturlashga strukturali yondashuvli doirasida amalga
oshirish murakkab emas. 1.4-rasmda bir darajali menyuni tashkillashtirish dastur
algoritmining tipik strukturasi keltirilgan.
K=K
3K=K
2K=K
1 Boshlash
Tarmoqlanuvchi
menyu
K ni kiritish
Harakat 2Harakat 1 Harakat 3K≠”Tamo
m”
K≠?
Tarmoqlanuvchi
menyu
K ni kiritish
Tamom](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_9.png)
![1.4 – rasm. Bir darajali menyu dastur algoritmining tipik tuzilishi
Ko’p pog’onali menyuli dasturining algoritmi, odatda, darajalar bo’yicha
tashkil qilinadi. Bunda har bir darajaning buyruqlarini tanlash bir darajali
menyudagidek amalga oshiriladi.
Menyuli interfeysida dastur yo menyu darajasi holatida yo amallarni bajarish
holatida joylashgan bo’ladi. Menyu darajasi holatida menyuning mos darajasini
bajarish va menyuning buyruqlarini tanlash amalga oshiriladi. Bajarish holatida esa
tanlangan amal senariysi amalga oshiriladi. Foydalanuvchiga senariyni yoki
dasturni bajarishga bog’liq bo’lmagan holda amallarni yakunlashni, masalan, Esc
tugmasi bosganda taqdim etishi kerak.
Daraxt ko’rinishidagi menyu tashkillashtirishda qat’iy cheklash nazarda
tutiladi: daraxt ildizi bo’yicha yuqoriga o’tish yoki tanlangan tarmoq bo’yicha
pastga o’tish. Iyerarxik menyuning har bir pog’onasi ushbu darajaning bandlaridan
iborat o’z mos oynasiga ega. Bunda menyuni amalga oshirishda ikki xil variant
mavjud: menyuning har bir oynasi to’liq ekranni egallashi yoki ekranda
menyuning bir nechta pog’onalari bir vaqtda mavjud bo’lishi mumkin. Ikkinchi
holatda tegishli yuqori pog’onadagi menyu bandlarini tanlash imkoniyatini beradi.
Navigatsiyalarni cheklash holatlarida variantlarga bog’liq bo’lmagan holda ikki
pog’onali men- yudan yuqori kerakli bandni topishni amalga oshirish yetarlicha
murakkab hisoblanadi.
Menyu interfeys hozirgi kunda kamdan – kam, nisbatan sodda dasturlarda,
strukturali texnologiya va maxsus kutubxonalardan foydalanish zarur bo’lmagan
holatlarda qo’llaniladi yoki ishlatiladi.
Erkin navigatsiyali interfeys foydalanuvchi interfeysi yoki WYSIWYG
(What you See Is What You Get –nimani ko’rsangiz shuni olasiz, ya’ni
foydalanuvchi ekranda nimani ko’rgan bo’lsa chop etishda shu narsaga ega
bo’ladi). Bu nomlanish shuni bildiradiki, bunday tipdagi interfeyslar ekranning
yuqori darajadagi grafik rejimidan foydalanishga mo’ljallangan.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_10.png)
![Grafik interfeyslar foydalanuvchi bilan vizual teskari aloqani amalga oshirib
va ekrandagi ob’ektlar va informatsiyalarni to’g’ridan - to’g’ri manipulyatsiya
qilish imkoniyatini amalga oshiradi, dasturiy ta’minot bilan interaktiv o’zaro
hamkorlik konsepsiyasini qo’llaydi. Bundan tashqari bunday tipdagi interfeys
dasturlar, ular orasida axborotni ko’chirish imkoniyatini qo’llagan holda o’zaro
moslik konsepsiyasini qo’llab quvvatlaydi (masalan: OLE texnologiya).
Menyu interfeysdan erkin navigatsiyali interfeys farqli ravshda amal aniq
holatidagi har qanday ruxsat etilganlarini amalga oshirish imkoniyatini, turli
interfeys komponentlar orqali kirish imkonini ta’minlaydi. Masalan, Windows
interfeysni amalga oshiruvchi dastur oynasi odatda quyidagilardan tuziladi:
– turli turdagi interfeyslar: qalquvchi, tugmali, kontekstli;
– ma’lumotlarni kiritishning turli xil ko’rinishdagi komponentalari.
Bunda menyuning tanlangan amali sichqoncha bilan ham, klaviatura bilan
ham amalga oshiriladi.
Bunday turdagi interfeyslarning muhim xususiyati aniq vaziyatda ma’noga
ega amallarni tanlashni taklif etib, foydalanuvchi bilan o’zaro hamkorlik
jarayonida o’zgarishga qodirligi xususiyatiga ega(biron matnni belgilamasdan
o’zgartirib bo’lmasligi). Erkin navigatsiyali interfeysni hosil qilish dasturiy
ta’minotning hodisaviy dasturlash va obyektga yo’naltirilgan kutubxonalardan
foydalanish bilan amalga oshiriladi. Obyektga yo’naltirilgan interfeyslar hozircha
to’g’ridan –to’gri manipulyatsiyali interfeys bilan taqdim etilmoqda. Interfeysning
bu tipi foydalanuvchi dasturiy ta’minot bilan predmet soha obyektlariga mos
piktogrammalarni tanlash va siljitish vositalari bilan amalga oshirilisini nazarda
tutadi. Shuningdek, bunday interfeyslarni amalga oshirish uchun hodisaviy
dasturlash va obyektga yo’naltirilgan kutubxonalar ishlatiladi.
Bir hujjatli (SDI–Single Document Interfase) va ko’p hujjatli (MDI–
Multiple Document Interfase) interfeyslar ham mavjud. Bir hujjatli yoki „bir
oynali“ interfeyslar nomidan aytilgandek, faqat bir hujjat bilan, masalan matn yoki
rasm bilan ishlashni tashkillashtiradi. Boshqa matnni ko’rish uchun ilovaning yana](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_11.png)
![bitta nusxasini ishga tushirish zarur bo’ladi, bu faqatgina multidasturli operatsion
tizimlarda mumkin. Shuning uchun bunday interfeyslar bir vaqtda bir nechta
hujjatlar bilan ishlash ehtimoli kam bo’lganda foydalaniladi[1-3].
Ko’p hujjatli yoki „ko’p oynali“ interfeys foydalanuvchi bir vaqtda bir
nechta hujjatlar bilan ishlash ehtimoli yuqori holatlarda tashkillashtiriladi. Bu
interfeyslarni amalga oshirish yetarlicha murakkab.
Foydalanuvchi interfeyslarini ishlab chiqish bosqichlari. Foydalanuvchi
interfeysini ishlab chiqish dasturiy ta’minotni ishlab chiqishning asosiy
bosqichlarini o’z ichiga oladi:
– masalaning qo’yilishi– interfeys tipi va unga qo’yiladigan talablarni
aniqlash;
– talablarni tahlili va spesifikatsiyalarni aniqlash–interfeys foydalanish
senariyasi va foydalanuvchi modelini aniqlash;
– loyihalash–muloqotlarni loyihalash va ularni kiritish-chiqarish shaklida
amalga oshirish;
– amalga oshirish – interfeysli jarayonlarni dasturlashtirish va testlash.
Primitiv interfeysda yagona ssenary: kiritish-ishlov berish-chiqarish
ishlatiladi. Bu foydalanish uchun qulay emas.
1.2. Insonning axborotni idroki, xotiralashi va qayta ishlashi bilan
bog’liq psixofizik xususiyatlari
Foydalanuvchi interfeyslarini loyihalashda insonning axborotni idrok etishi,
xotiralashi va qayta ishlashi bilan bog’liq psixofizik xususiyatlarini hisobga olish
zarur.
Inson miyasi ishlash tamoyillarini tadqiq etish bilan kognittiv psixologiya
shug’ullanadi. Bu soha mutaxassislari 1.5-rasmda keltirilgan miyaning
soddalashgan axborot-protsessual modelini taklif etadilar.
Bizning miyamizga tashqi dunyo haqidagi ma’lumotni katta miqdorda qabul
qilinadi. Miyaning shartli ravishda “qabul qilish prosessori” deb atalgan qismi
ongning ishtirokisiz doimo uni qayta ishlaydi, oldingi tajriba bilan taqqoslaydi va](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_12.png)
![oldingi saqlanadigan joyga ko’rish, tovush va boshqa obrazlar ko’rinishida
joylashtiriladi.
1.5 –rasm. Miyyaning soddalashgan axborot-protsessual modeli.
Biz uchun qandaydir to’satdan yoki ahamiyatli atrofdagi o’zgarishlar
bizning diqqatimizni tortadi va unda bizni qiziqtiruvchi axborot qisqa muddatli
xotiraga qabul qilinadi. Agar bizning diqqatimiz jalb etilmasa, u holda
saqlanadigan joydagi axborot keyingi qismlari bilan bosilib yo’qoladi. Har bir vaqt
momentida diqqat fokusi bitta nuqtada bo’lishi mumkin. Shuning uchun, agar “bir
vaqtda” bir nechta vaziyatlarni kuzatish zarur bo’lsa, u holda fokus bitta
kuzatilayotgan elementdan ikkinchisiga o’tadi. Unda diqqat “tarqoqlanadi” va
qandaydir detallari yo’qolishi mumkin. Masalan, Windows oynasi chiziqli
o’tkazgichdan foydalanib matn yoki rasmni o’tkazilganda, bir vaqtning o’zida
qayerda to’xtashini aniqlash uchun matnga va o’tkazgich strelkachasiga qarash
kerak bo’ladi. Matn muhimroq bo’lgani uchun diqqat sichqonchaga o’tadi va u
chiziqli o’tkazgich strelkasidan yo’qoladi. Takrorlanish va
muhimlilik filtiriBilish
protsessori
Harakat
protsessori Doimiy xotira
Kesh xotira (t<30 s)
Saqlash
Saqlash joyi Filtrlashni boshlash
Tashqi muhitdagi axborotlarni
idrok etish](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_13.png)
![Idrok qilish porotsessori bilan qayta ishlash biror vaqtni talab etadi, agarda
qayta ishlov vaqtidan kam vaqt davomida berilsa u holda bizning miya uni qabul
qilmaydi.
Idrok ko’p hollarda motivasiyaga asoslanadi. Masalan, agar inson och
bo’lsa, u birinchi navbatda barcha yeydigan narsalarga e’tibor beradi, agar
charchasa-xonaga kirib, birinchi navbatda divan yoki kerovatni ko’radi.
Axborotni qayta ishlash jarayonida qabul qilinayotgan ma’lumotlarni miya
oldingilari bilan taqqoslashini ham hisobga olish zarur. Agar insonga
A, B, C simvollar ketma-ketligi ko’rsatilsa, u B ni 13 deb qabul qilish
mumkin.
Kadr almashganda miya biroz vaqt to’xtaydi: u eng muhim detallarni ajratib
yangi rasmni o’zlashtiradi. Demak, agar foydalanuvchining tez reaksiyasi zarur
bo’lsa, rasmni tez o’zgartirish maqsadga muvofiq emas.
Qisqa muddatli xotira-insonning “axborotlarga ishlov berish” eng tor joyi.
Uning hajmi taqriban 7±2 bog’liq bo’lmagan obyektlar soniga teng. Qisqa
muddatli xitira o’z jinsiga ko’ra miyaning operativ xotirasi hisoblanadi, u bilan
bilish possesori ishlaydi, lekin talab etilmagan ma’lumot unda 30 s dan ortiq
saqlanmaydi. Bizga zarur bo’lgan qandaydir ma’lumotni esdan chiqarmaslik uchun
uni “ichimizda” takrorlaymiz. Uni qisqa muddat “xotirada” yangilaymiz. Shunday
qilib, interfeyslarni loyihalashda ko’pchilik odamlarga, masalan, 5(7-2) dan ziyod
raqamli son yoki harflarning biror guruhini eslab qolish va boshqa ekranga
chiqarish murakkab.
Odamlar har bir faoliyatga u qanday bajarilishi haqida o’z tushunchasini
kiritadi. Bu tushuncha -faoliyat modeli –insonning oldingi tajribasiga asoslanadi.
Bunday modellarning to’plami insonning uzoq muddatli xotirasida saqlanadi.
Uzoq muddat xotiraga doimo takrorlanuvchi yoki kuchli ehtiroslar bilan
bog’liq axborotlar yoziladi. Uzoq muddatli xotira hajmi va chegaralanmagan
axborot saqlanadigan joy. Lekin bu axborotga kirish oson emas: xotiradan
axborotni chiqarib olish mexanizmlari ossistativ xarakterga ega. Axborotni eslab](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_14.png)
![qolishning maxsus metodikasi (mnemonika) xotiraning xossasidan foydalanadi:
axborotni eslab qolish uchun uni xotirada saqlangan va oson chiqarib olish
mumkin bo’lgan m’lumotlar bilan bog’lanadi[9-10].
Uzoq muddatli xotiraga kirish qiyin bo’lgani uchun foydalanuvchi zarur
axborotni eslashga emas u uni tanishga erishish lozim. Shuning uchun ham menyu
tipidagi interfeys juda ko’p qo’llaniladi.
Rangni qabul qilish xususiyatlari. Rang inson ongida emotsional fon bilan
assaotsionalanadi. Ma’lumki, issiq ranglar qizil, malla, sariq insonni qo’zg’atadi,
sovuq ranglar ko’k, binafsha, kulrang tinchlantiruvchi. Rang inson uchun kuchli
qo’zgatuvchidir, shuning uchun interfeysda rangni qo’llashga ehtiyotkorlik bilan
munosabatda bo’lish kerak.
Chiziqlarning ko’pligi diqqatni jalb etadi, lekin tez charchatadi. Shuning
uchun foydalanuvchi uzoq ishlaydigan xona oynalarini yorqin bo’lish kerak emas.
Insonning rangni qabul qilish individual xususiyat ekanligini ham hisobga olish
zarur, har 10 kishidan biri qandaydir ranglarni yamon farqlaydi. Shuning uchun
ma’suliyatli hollarda foydalanuvchiga ranglarni zozlashiga imkon berishi lozim.
Tovush qabul qilish xususiyatlari. Interfeyslarda tovush turli maqsadlarda
foydalanadi. Diqqatni jalb etish uchun, foydalanuvchi biror holatini ta’minlovchi
fon, qo’shimcha malumot manbai va hakozolar maqsadida tovushni qo’llaniladi.
Ko’pgina inson tovush signallariga sezgirligini hisobga olish zarur, ayniqsa, agar
ular xato borligini ko’rsatsa, shuning uchun tovushli hamrohlikni yaratishda
o’chirish imkoniyati ko’zda tutish lozim.
Vaqtni subektiv qabul qilish. Insonga vaqtni subektiv qabul qilish xos.
Ichki vaqt qayta ishlanayotgan va qabul qilayotgan axborot tezlik miqdoriga
bog’liq. Band kishi agarda vaqtni sezmaydi. Kutish vaqtida vaqt ho’ziladi, bu esa
bu vaqtda miya axborot bo’shlig’ida bo’lganligidadir, bu holatda charchashga ham
olib keladi.
Aytish kerakki, foydalanuvchi 1–2 s. ziyod kutganda chalg’iydi, fikrini
yo’qotish mumkin, bu esa ish natijalariga salbiy ta’sir ko’rsatadi va charchoqni](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_15.png)
![oshiradi, chunki kutishdan so’ng har marta ishga kirishish uchun ko’p aql
sarflanadi. Kutish vaqtini qisqartirish mumkin, foydalanuvchi ishiga loqayt
bo’lmaslik bilan masalan, uni o’ylash uchun qandaydir ma’lumotni berish
mumkin. Imkoni boricha foydalanuvchi oraliq natijalarini chiqarib berish lozim:
Birinchidan, u o’ylash bilan band bo’ladi, ikkinchidan, ular bo’yicha u kelgusi
natijalarni baholaydi, agar ular qanoatlantirmasa amalni bekor qiladi.
Foydalanuvchi “ko’ngilini olish uchun” animatsiyalardan foydalanishga
urinish mumkin, masalan, Windowsda fayllarni nusxalashda ular varaqchalar bilan
oraliq ko’rsatiladi. Lekin qandaydir animatsiyani birinchi marta ko’rsak bu qiziq,
yarim soat davomida varaqlar qanday “uchishini” kuzatish charchatadi.
Zo’riqishni kamaytirish uchun quyidagi asosiy qoidalarga rioya qilish lozim:
foydalanuvchiga u buyurtma bergan amallar bajarilishiga qancha vaqtini talab
etishidan xabar berishi lozim. Odatda buning uchun qolgan vaqt indikatorlari,
internetdagi animatsiyalangan obyektlar va subektiga, shuningdek qumli soatlarga
almashtirilgan holda berish. Tizim qolgan ishini davom ettirish momentini aniq
baholash muhim. Buning uchun, odatda, ekran boshqa qurilmalar jiddiy
o’zgarishlaridan foydalaniladi. Natijada foydalanuvchi va interfeysni o’zaro ta’siri
nafaqat turli gaplarda berilgan axborot qabul qilish, qayta ishlash va tejab qolish
bo’yicha fizik imkoniyatlari va xususiyatlari bilan bog’liq interfeysning
foydalanish modeli bilan aniqlanadi.
1.3 . Interfeysining f oydalanuvchi va dasturiy modeli
Foydalanuvchi interfeysining uchta bir - biridan farqlanuvchi modeli mavjud:
dasturchining modeli, foydalanuvchining modeli va dasturiy model. Dasturchi
foydalanuvchi interfeysi ishlab chiqishda foydalanuvchi interfeysida unga qanaqa
amallarni boshqarishni ro’yobga chiqish zaruriyligidan chetga chiqib, balki buni
kompyuterning mavjud resurslarini ham, o’z kuchini va vaqtini ham kam sarf etib
qanday yuzaga chiqarishni asos qilib oladi. Uni dasturiy ta’minotning
funksionalligi, samaradorligi, texnologligi, ichki mukammaligi va foydalanuvchiga
qulaylik bilan bog’liq bo’lmagan xususiyatlar qiziqtiradi. Aynan shuning uchun](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_16.png)
![dasturlarda mavjud ko’pgina interfeyslar foydalanuvchilar jiddiy e’tirozlariga
sabab bo’ladi [1].
To’g’ri fikr yuritish nuqtai nazaridan yaxshi interfeys deb hisoblash
mumkin, foydalanuvchi ishlash jarayonida aynan u kutgan interfeysga ega bo’lsa.
Foydalanuvchining interfeys funksiyalari haqidagi tasavvurini interfeysning
foydalanuvchi modeli ko’rinishida ta’riflash mumkin.
Interfeysning foydalanuvchi modeli – bu alohida foydalanuvchi yoki bir
qancha foydalanuvchilar guruhining dasturlar yoki dasturlar tizimi ishlash vaqtida
yuz beradigan jarayonlar haqidagi umumlashgan tasavvurlar majmuasi. Bu model
quyidagilar bilan xarakterlanadigan alohida foydalanuvchining tajriba
xususiyatlariga asoslanadi:
– dasturiy ta’minoti ishlab chiqilayotgan predmet sohaga doir ma’lumotlilik
darajasi;
– kompyuterdan foydalanish sohasidagi malaka darajasi;
– kompyuter bilan ishlash stereotipiyaga chidamliligi.
Foydalanuvchi modelini yaratish uchun dasturiy ta’minot mo’ljallangan
foydalanuvchilar tajribasi yuqorida ko’rsatilgan xususiyatlarini o’rganish zarur.
Shu maqsadda so’rovlar, testlar foydalaniladi va hatto ayrim amallarni bajarish
jarayonida amalga oshiriladigan harakatlar ketma–ketligi plyonkaga yozib
qo’yiladi.
Foydalanuvchi va dasturchi modellar mosligi hamda ular asosida
interfeysning dasturiy modelni qurish keltirilgan ( 1.6 –rasm). Murakkab
avtomatlashtiriladigan predmet sohaga qaraganda foydalanuvchi modeli
xususiyatlarini hisobga olib va ishlab chiqishda ham ishlash vaqtida ham katta
mehnat sarfini talab yetmaydigan interfeysning dasturiy modelini qurish
murakkabligini namoyon qiladi. Shu nuqtai nazardan obyektli interfeyslar
istiqbolliroq ekan, chunki ular asosida foydalanuvchi ish ko’rayotgan predmet
soha obyektlarini aks etishi yotadi. Hozirgi vaqtda ularni amalga yetarlicha mehnat
sarfini talab etadi [11-12] .](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_17.png)
![Interfeysning dasturiy modelini yaratishda shuningdek, foydalanuvchi
modelini o’zgartirish oson emasligini nazarda tutishi zarur. Foydalanuvchilarning
kasbiy darajasi va ularning kompyuterdan foydalanish sohasidagi bilimlari oshishi
dasturiy ta’minot yaratuvchilar kompetensiyasiga kirmasa ham, ko’pincha sodir
bo’ladigan jarayonlar mohiyatini mos aks etiradigan talab darajasida yaratilagan
interfeys foydalanuvchi malakasini o’sishiga yordam beradi.
Predmet sohadagi amallarni bajarishning intuitiv modeli interfeyslarni
yaratuvchilar uchun muhim bo’lib qolishi kerak, shunda ko’p hollarda ularni
o’zgartirmasdan, mukammallashtirish zarur. Aynan amallar bajarilishini intuitiv
model bilan ish ko’rishni istamaslik yoki imkon yo’qligi foydalanuvchi tomonidan
salbiy qabul qilinadigan sun’iy yasama interfeyslarning yaralishiga olib keladi.
Ba’zida o’zgarish uchun qulay bo’lgan yagona element – kompyuter bilan
ishlashning turg’un bo’lib qolgan qolipi hisoblanadi, lekin keskin o’zgartirishlar –
ta’sirli jarayondir. Agar biror inqilobiy o’zgarish foydalanuvchining
imkoniyatlarini kengaytirsa yoki uning ishini osonlashtirsa, masalan, Windows
interfeyslarga o’tish juda ko’p sondagi professional bo’lmagan
foydalanuvchilarning kompyuter bilan ishlashini juda ham soddalashtirdi, bunga
harakat qilsa arziydi. Qoliplarni mayda narsalar bo’yicha yoki qabul qilingan
g’oyaga noto’g’ri rioya qilib buzish ishlab chiquvchi qanday jarayon ro’y
berayotganligini tushunmaydigan foydalanuvchilardan xalos bo’lish xavfiga ega
bo’ladi. Misol sifatida, ishchi stolidagi piktogramma bo’yicha o’ng tugmani ikki
marta bosish bilan yoki agar piktogramma Quik Launch Windows panelga
chiqarilgan bo’lsa, bir marta bosish bilan dasturlarni chaqirishda chalkashlikka yo’l
qo’yish mumkinligini eslatib o’tamiz.
Foydalanuvchilar tomonidan interfeysni baholash mezonlar. Dasturiy
ta’minotni ishlab chiqish bo’yicha yetakchi firmalar tomonidan olib borilgan ko’p
sonli so’rovlar va tadqiqotlar ko’rsatishicha foydalanuvchilar tomonidan
interfeyslarni baholash mezonlar quyidagilar hisoblanadi:](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_18.png)
![–tizimni o’zlashtirish va amallarni yodda saqlash soddaligi – muayyan holda
o’zlashtirishga sarflangan vaqt va xotirada axborotni saqlash davom etish muddati
baholanadi;
– tizimdan foydalanganda natijalarga erishish tezligi–buyruq va sozlashlarni
sichqoncha bilan kiritish yoki tanlashlar soni bilan aniqlanadi;
– tizim faoliyatidan subyektiv qoniqish (ishlash qulayligi, toliqish va h.).
1.6 – rasm. Foydanalanuvchi interfeysini loyihalash jarayoni
Aynan bitta paketda doyimiy ishlovchi professional foydalanuvchilar uchun
ikkinchi va uchinchi mezonlar birinchi o’rinda tursa, davriy va nisbatan qiyin
bo’lmagan masalani bajaruvchi dasturiy ta’minot bilan ishlovchi professional Dasturiy ta’minotning predmet sohasi
Dasturchi modeli:
platforma;
operatsion tizim(OT);
mutaxasis yondashuvi;
mutaxasis usuli;
mutaxasis muhiti va tili
spesifikatsiya va h. k. Foydalanuvchi modeli:
intuitive model;
formalniy model;
masala;
jarayon;
asboblar;
natija va h. k.
Dastur modeli
Dasturchi modeli;
Foydalanuvchi modeli;
Interfeys turi;
Metaformalar;
Belgilar va h. k.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_19.png)
![bo’lmagan foydalanuvchilar uchun esa birinchi va uchinchi mezon muhim
hisoblanadi. Shu nuqtai nazardan bugungi kunda professional foydalanuvchilar
uchun erkin navigasiyaga ega interfeys, professional bo’lmagan foydalanuvchilar
uchun to’g’ridan–to’g’ri manipulyasiya qiladigan interfeys eng yaxshi
xarakteristkalar bo’ladi.
1.4. Muloqotlarning turkumlanishi va ularni ishlab chiqishning umumiy
tamoyillari
Muloqot turi. Muloqotnin g turi axborot almashinish jarayonini
“suhbatdoshlarning” qaysi biri boshqarishini aniqlaydi. Mos ravishda muloqot ikki
turini ajratiladi: dastur tomonidan boshqariladigan va foydalanuvchi tomonidan
boshqariladigan.
Dastur tomonidan boshqariladigan muloqot dasturiy ta’minotda o’rnatilgan
muloqot ssenariyasi qat’iylik, chiziqlilik yoki daraxt shaklilik, ya’ni mumkin
bo’lgan muqobil variantlar kiritilganlik borligi ko’zda tutiladi. Bunday muloqot
odatda har bir qadamda qanaqa axborotni kiritish zarurligi oydinlashtiradigan
katta miqdordagi yo’l ko’rsatuvchi ma’lumotlar bilan davom etadi.
Foydalanuvchi tomonidan boshqariladigan muloqot tizimga uning bajarishi
zarur bo’lgan amallar uchun qo’llaydigan muloqot ssenariyasi foydalanuvchidan
bog’liqligi nazarda tutiladi. Bunda tizim foydalanuvchining turli xil ssenariyalarini
amalga oshirish imkoniyatlarini ta’minlaydi [4-7].
Muloqotning shakli. Agar “suhbatdoshlarga” tushunadigan til mavjud
bo’lmasa hech qanday muloqot amalga oshmaydi. Muloqot olib borilayotgan tilni
tavsiflashga uning sinta ks isini– tilning bo’lishi mumkin bo’lgan konstruksiyalar
(so’zlar, gaplar) aniqlovchi qoida yoki uni shaklini hamda semannikani –tilning
konkret konstruksiyasi sintaksis ma’nosi aniqlovchi qoida yoki uning mazmunini
aniqlash kiradi. Sintaksis va semantikaning konkret holatdagi foydalanilayotgan
turiga bog’liq ravishda muloqotning uch shakli farqlanadi:
– frazali (jumlali);
– direktivali (ko’rsatmali);](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_20.png)
![– jadvalli.
Frazali shakl foydalanuvchi bilan “aloqa” tabiiy til yoki uning qismiy
to’plamida bo’ladi. Ushbu shakldagi muloqot tarkibi so’roq, darak va undov
gaplardan hamda savollarga javoblardan tuziladi. Aloqa erkin shaklda (formatda)
amalga oshirilish, ammo alohida frazalarning qayd etilishi ham bo’lishi mumkin.
Tabiiy tilda muloqotni tashkillashtirish bu zamon darajasidagi –masala hal etilgani
yo’q, chunki tabiiy til nihoyatda murakkab va hozircha uning sintaksisi va
semantikasi yetarli darajada formallashtirgan emas.
Ko’pincha lo’nda javobga mo’ljallangan muloqotdan foydalaniladi, masalan:
Dastur: Yoshingizni kiriting:
Foydalanuvchi: 40.
Bu holda dastur ishlatilayotgan cheklangan–tabiiy tilining sintaksisi ham,
semantikasi ham cheklovlar tavsifiga ega bo’ladi. Ushbu misolda “butun musbat
son” tushunchasi sistaksisini aniqlash va son qiymatiga cheklov qo’yish yetarli.
Ammo, asosan intellektual tizimlar uchun tabiiy til gaplarning cheklangan
qismiy to’plami asosida interfeyslar yaratish bo’yicha ayri m tajribalar mavjud.
Bunday interfeyslarda amalga oshiriladigan muloqot tili sintaksisi va semantikasi
yetarlicha murakkab.
Bunday holatlardagi frazalarga ishlov berishda so’z shakli tushunchasi bilan
ish ko’riladi. So’z shakli– ikkita qo’shnilar orasida probellar yoki tinish belgilar
bo’lgan matnning bo’lagi. Ma’nosini e’tibor bermasdan so’z shakllariga ishlov
berish morfologik tahlil deyiladi.
Morfologik tahlilning ikki usuli ajratiladi:
– deklarativ – lug’atda har bir so’zning barcha mumkin bo’lgan so’z
shakllari topilishi nazarda tutiladi, u holda tahlil lug’atdagi so’z shaklini izlashdan
iborat bo’ladi. Ushbu usul lotin, krill yoki bosh alfavitlar katta va kichik harflari
i xtiyoriy kombinasiyasidan tuzilgan xabarlarga ishlov berish imkoniyayatini
ta’minlaydi.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_21.png)
![– prosedurali –joriy so’z shaklining keyin identifikasi yalanadigan negizini
ajratish ko’zda tutiladi.
So’z shakli aniqlangandan so’ng xabarlarning sintaksis tahlili amalga
oshiriladi, natijada ularning sintaksis tuzilishi aniqlanadi, ya’ni gapning tahlili
bajariladi.
Keyin semantik tahlil bajariladi, ya’ni so’z shakllari orasidagi ma’noviy
aloqalar aniqlanadi. Bunda gapning ma’nosini aniqlaydigan asosiy predikatlar
ajratiladi.
Shunday qilib, muloqotning frazali shaklini amalga oshiradigan interfeysda
xabarlarni tabiiy til shaklidan ichki tasvirlanish shakligan va aksincha almashtirish,
foydalanuvchi xabarini tahlil va sintezini bajarish shart.
Tabiiy tilning qismiy to’plamidan foydalanishda frazali shaklning asosiy
kamchiliklari quyidagilar hisoblanadi:
– resurslarning katta sarf ettilishi;
– formulirovkani bir ma’noli talqin qilishning kafolati mavjudmasligi;
– uzun grammatik to’g’ri frazalari kiritish zarurligi.
Frazali shaklning asosiy afzalligi tizim bilan nisbatan erkin muloqot
qilishdan iborat.
Direktiv shakl maxsus ishlab chiqilgan formal tilning buyruqlaridan
(direktivlaridan) foydalanish nazar tutiladi. Bu holatda kombinatsiyalangan
ma’lumotlarni tavsiflovchi buyruqlar shu tilning gaplari deb ataladi, bunda
bo’layotgan jarayonning identifikatorini, zaruryat bo’lganda uning uchun
ma’lumotlarni ham qamrab oladi.
Buyruqlarni quyidagicha kiritish mumkin:
– maxsus ishlab chiqilgan formatdagi matnning satri ko’rinishida, masalan,
buyruqlar satrida kiritiladigan MS DOS buyruqlari;
– klaviatura klavishlari ayrim kombinasiyalarini bosish bilan, masalan,
zamonaviy Windows- ilovalarining “tezkor murojaat” kombinasiyalari;](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_22.png)
![– sichqonchani manipulasiya qilish vositasi bilan, masalan,
piktogrammalarni “ko’chirish bilan”;
– ikkinchi va uchinchi usullar kombinasiyalari bilan.
Direktiv shaklning asosiy afzalliklari ushbulardan iborat:
– kiritiladigan axborot larning nisbatan katta bo’lmasligi;
– moslashuvchanligi–bu holda faqat mumkin bo’lgan buyruqlar to’plami
bilan chegaralangan amallarni tanlash imkoniyati;
– muloqotda foydalanuvchi tomonidan boshqaruviga mo’ljallanganligi;
– ekrannning minimal sohasidan foydalanish yoki undan umuman
foydalanmaslik;
– boshqa shakllar bilan birlashtirish mikoniyati.
Direktiv shaklning kamchiliklari:
– ekranda ko’rsatmalar umumman mavjudmasligi, bunda kiritiladigan
buyruqlarni va ularning sintaksisini yodda saqlash talab etiladi;
– bo’layotgan jarayonning holati haqidagi teskari aloqa deyarli to’liq
bo’lmasligi;
– matnli axborotni kiritish yoki sichqonchani manipulasiya qilish bo’yicha
ko’nikma zarurligi;
– foydalanuvchi tomonidan sozlashlar bajarishning imkoniyati yo’qligi.
Tadqiqotlar shuni ko’rsatadiki, direktiv shakl odatda ko’p foydalaniladigan
buyruqlar sintaksisi yoki klavishlar kombinasiyasini tez yodda saqlab qoladigan
professional foydalanuvchilar uchun qulay hisoblanadi. Shaklning asosiy
afzaliklari (moslashuvchanlik va yaxshi vaqtli xusussiyatlar) bu holda ayniqsa
yorqin ko’rinadi[1-4].
Jadvalli shakl foydalanuvchi dastur tomonidan taklif etilganidan javob
tanlanilishi nazarda tutiladi. Jadvalli shakl uchun muloqot tili soddaroq sintaksis va
yetarlicha oson amalga oshiriladigan bir qiymatli semantikaga ega bo’ladi. Bu
shakl foydalanuvchi uchun qulay, chunki hamisha yodga keltirishdan ko’ra tanlash
osonroq, ayniqsa professional bo’lmagan foydalanuvchi yoki konkret dasturiy](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_23.png)
![ta’minot kam foydalanadigan foydalanuvchilar uchun muhim. Ammo, jadvalli
shaklni hamisha ham qo’llash imkoni mavjud emas: uni konkret savolga faqat
mumkin bo’lgan javoblar to’plami chekli bo’lsa foydalanish mumkin. Agar
mumkin bo’lgan javoblar miqdori ko’p ( 20 dan ortiq) bo’lsa, jadvalli shaklni
qo’llash maqsadga muvofiq bo’lmaydi.
Jadvalli shaklning afzalliklar:
– ko’rsatmalar mavjudligi, bu foydalanuvchi xotirasiga bo’ladigan
zo’riqishni kamaytiradi, chunki ushbu shakl yodda saqlashga emas, balki tanishga
mo’ljallangan;
– kiritishdagi xatolar miqdorining qisqarishi: foydalanuvchi axborot
kiritmaydi, balki unga ko’rsatadi;
– foydalanuvchini o’rgatish vaqtining qisqarishi;
– boshqa shakllar bilan birlashtirish imkoniyati;
– ayrim hollarda foydalanuvchi tomonidan sozlashlar bajarish imkoniyati.
Uning kamchiliklariga quyidagilar kiradi:
– ekran bo’ylab navigasiya ko’nikmalariga ega bo’lish zaruriyati;
–vizual komponentlarni tasvirlash uchun ekranning nisbatan katta
maydonidan foydalanish;
– ekrandagi axborotni doimo yangilash zaruriyati bilan bog’liq ravishda
kompyuter resurslarilardan intensiv foydalanish.
Ta’kidlash kerakki, muloqot turi va shakli bir –biridan mustaqil tanlanadi:
har bir shakl muloqotning ikkala turi uchun qo’llanilishi mumkin (1.7 –rasm).
1.7 –rasm. Muloqot turi va uning shakllari mosligiMuloqot turi Foydalanuvchi
boshqaradigan
Tizim boshqaradigan Direktiv
Frazali
Jadvalli Muloqot shakli](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_24.png)
![Ammo, foydalanuvchi tomonidan boshqariladigan muloqotdagi frazali
shakl, odatda, muloqot tilining murakkabroq sintaksis va semantikani bo’lishini
taqoza etadi, chunki dastur foydalanuvchini “tushinishi” kerak.
Murakkab dasturiy ta’minot, odatda, foydalanuvchi bilan yechilayotngan
masalaga bog’liq ravishda turli xil turdagi va shakldagi muloqot vositalari bilan
o’zaro hamkorlik qiladi. Dasturiy ta’minotning normal ishlashi jarayonida sodir
bo’ladigan sinxronli deb nomlanadigan muloqotdan tashqari, tizimning tashabbusi
bo’yicha yoki foydalanuvchining normal jarayon ssenariyasini buzganda sodir
bo’ladigan muloqotlar ham nazarda tutiladi. Bunday muloqotlar asinxronli deb
ataladi. Odatda, ular tizim yoki foydalanuvchidan kutilmagan xabarlarni olish
uchun ishlatiladi.
Muloqotlarni ishlab chiqish. Muloqotlarni loyihalash va amalg oshirishni
quyidagi bosqichlarga bo’lish mumkin:
– zaruriy muloqotlar, ularning asosiy xabarlari va mumkin bo’lgan
ssenariyalar to’plamini aniqqlash – abstrakt muloqotlarni loyihalash;
– har bir muloqot turi va shaklini, shuningdek, foydalananiladigan tillar
sinaksis va semantikasini aniqlash – konkret muloqotlarni loyihalash;
- asosiy va qo’shimcha qurilmalarni tanlash va har bir muloqot uchun
kiritish-chiqarish jarayonlarini loyihalash hamda uzatiladigan xabarlar
aniqlashtirish - texnik muloqotni loyihalash.
Abstrakt muloqotlarning asosini dasturiy mahsulotga belgilangan
avtomatlashtirish uchun texnologik jarayon ideologiyasi yotadi. Aynan
avtomatlashtililayotgan texnologik jarayonning tuzilishi tahlil qilinib, ishlab
chiquvchi dasturiy ta’minotda nazarda tutilish zarur bo’lgan muloqot
ssenariyalarini aniqlaydi.
Ssenariyalardan tashqari, abstrakt muloqotlarni loyihalashda interfeyslar
holatlari diagrammasi yoki muloqot graflari ishlatiladi.
Muloqot grafi -har bir uchi ekranda konkret kartinka ( kadr ) yoki
foydalanuvchiga ruxsat berilgan amallar to’plami bilan xarakterlanadigan](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_25.png)
![muloqotning ma’lum holati mos qo’yilgan yo’naltilgan muallaq graf. Uchidan
chiquvchi yoylar foydalanuvchi tomonidan ko’rsatilgan amalni bajarishda holatlari
mumkin bo’lgan o’zgarishlarni ko’rsatib turadi. Yoylar vazni sifatida holatdan
holatga o’tishlarda shartlarni va o’tish vaqtida bajariladigan amallarni ko ’ rsatadi.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_26.png)
![2- §. Ilovalarda grafik interfeyslardan foydalanish
2.1. Foydalanuvchining grafik interfeysining asosiy komponentalari
Foydalanuvchining grafik interfeysi Windows, Apple Macintosh, OS/2 va
h.k. operasion tizimlar qo’llab quvvatlaydi. Bunday interfeyslar uchun keltirilgan
opera t sion tizimlar doirasida foydalanuvchi bilan o’zarohamkorlik qiluvchi
standart komponent a lar to’plami ishlab chiqilgan. Bu to’plam turli opera t sion
tizimlarda interfeyslar bilan ishlash asosiy yo’llari bir xil emas. Ko’pgina
zamonaviy dasturlarda foydalanuvchi interfeysi WIMP: W - Windows (oyna), I -
Icons (piktogrammalar), M - Mouse (sichqoncha), P - Pop-up (qalqib chiquvchi
menyu) texnologiyasi asosida quriladi. Shu tarzda, foydalanuvchining grafik
interfeysi asosiy elementlari quyidagilar hisoblanadi: oyna, piktogrammalar,
kiritish–chiqarish komponentlari, ekrandagi obyektlarni ko’rsatuvchi qurilma va
to’g’ridan–to’g’ri manipulyatsiya qiladigan qurilma sifatida foydalaniladigan
sichqoncha.
Oyna. Oyna–odatdagi to’g’ri to’rtburchak, fizik ekranning ramka bilan
chegaralangan sohasi. Oyna ekran doirasida o’lchamini va joylashish o’rnini
o’zgartirishi mumkin. Barcha oynalar 5 toifaga ajratiladi:
– asosiy oyna (ilovalar oynasi);
– sho’ba yoki tobe oyna;
– muloqot oynasi;
– informa t sion oyna;
– menyu oynasi.
Windows ilovalar oynasi ( 2.1 –rasm) odatda quyidagilardan tuziladi:
oynaning ishchi sohasini chegaralovchi ramka, tizimli menyu knopkali va oynani
ko’rinishini tanlash chiqish knopkalariga ega sarlavha satri, menyu satri,
piktografik menyu(asboblar paneli), gorizontal va vertikal o’tkazish chiziqlar va
holatlar satri.
Windows sho’ba oynasi ( 2.2 a–rasm) bir vaqtda bir necha hujjatlar bilan
ishlash ko’zda tutilgan dasturiy ta’minotdagi ko’p hujjatli dasturiy interfeyslarda](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_27.png)
![foydalaniladi. Ilovalar oynasidan farqli ravishda sho’ba oynasida menyu
bo’lmaydi. Sarlavha satrida– hujjat yoki fayl bog’liq maxsus nom bo’ladi. Barcha
sho’ba oynalarda piktogrammalar bir xil.
Windows muloqot oynasi ( 2.2 b–rasm) turli xil ishlash tartibini, zaruriy
parametrlarni yoki boshqa axborotlarni ko’rish va berish uchun ishlatiladi. U
quyidagilardan tuzilishi mumkin:
– tizimli menyu knopkali sarlavha satri;
– foydalanuvchiga javobni kiritish yoki tanlash imkoniyatini beruvchi
komponentlar;
– ko’rsatma berishni ta’minovchi yordamchi komponentlar, masalan,
dastlabki ko’rish maydoni yoki ma’lumotnomaga murojaat qiluvchi knopka.
2.1 –rasm. Ilova oynasi va uning elementlari
Odatda, muloqot oynaning o’lchami o’zgarmaydigan bo’ladi, ammo uni
ekran bo’ylab siljitish mumkin [1-3] . Ramka Oynani
yopishOynaning ko’rinishini tanlovchi tugmalar
Asboblar
paneliMenyu Tizimli
menyu Sarlavha
Ishchi
oyna](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_28.png)
![Informasion oyna ikki turda bo’ladi: xabarlar oynasi va yordam oynasi.
Xabarlar oynasi ( 2.2 d–rasm ) tizim menyu knopkali sarlavhadan tashqari xabarlar
matnni va bir yoki bir nechta foydalanuvchiga beriladigan knopka, masalan, Yes
va No knopkalar yoki Yes, No va Cancel knopkalar bo’ladi.
Yordam oynasi murakkabroq strukturaga ega: u menyu, o’tkazgich chizig’i
va informatsion soha, ya’ni ilovaning oynasiga o’xshash, ammo farqlanish
ma’lumotnomali axborotda harakatni ta’minlaydigan maxsus vazifasiga ega,
tuzilish mumkin.
Windows menyu oynasi iyerarxik menyuning ochiluvchi paneli sifatida yoki
alohida kontekst menyu sifatida foydalaniladi. Menyu oynasining har bir satrida
quyidagilarga biri bo’lishi mumkin:
– buyruq;
– strelka bilan belgilanuvchi menyuning keyingi darajasi;
– uchta nuqta bilan belgilanuvchi muloqot oyna.
Bundan tashqari, ayrim satrlarda tez chaqirishni klavishlar ko’rsatish qo’shilishi
mumkin.
Piktogrammalar. Piktogramma u bog’langan bufer mazmunini aks ettiruvchi
katta bo’lmagan grafik tasvirli oynani ifodalaydi. Ularning quyidagi turlari
farqlanadi:
– dasturiy piktogrammalar;
– sho’ba oynalar piktogrammalar;
– asboblar paneli piktogrammalar;
– obyektlar piktogrammalari.
Dasturiy piktogrammalar operasion tizim boshqaradigan mos dastur bilan
bog’langan. Shunday ilova oynasini Windows masalalar paneli piktogrammaga
“yig’ish” yoki uni aksincha “ishchi stoliga yoyish” mumkin.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_29.png)
![A b
D e
2.2 –rasm. Windows yordamchi oynalarining ko’rinishlari:
a) –sho’ba oynasi, b) –muloqot oynasi, d) –xabarlar oynasi, e) –menyu
oynasi(moslashuvchan)
Asboblar paneli piktogrammalari odatda menyuning ularga tezkor
murojaatni ta’minlab mos funksiyasiga kirishni takrorlaydi.
Obyektlar piktogrammalari ushbu obyektlar bilan to’g’ridan–to’g’ri
manipulyasiya qilish uchun foydalaniladi. Odatda, barcha piktogrammalarni
sichqoncha bilan siljitish mumkin. Bundan tashqari, piktogrammalar bilan
ishlashni osonlashtirish uchun foydalanuvchi asboblar paneli piktogrammalar
ustida sichqonchani bir qancha vaqt ushlab turganda paydo bo’ladigan “namoyon
bo’ladigan” ko’rsatmadan foydalaniladi.
Tasvirlar bilan to’g’ridan–to’g’ri manipul ya siya qilish. Tasvirlar bilan
to’g’ridan–to’g’ri manipulasiya qilish –bu qanadaydir obyektga ta’sir ko’rsatish
buyruqni interfeysdagi sichqoncha yordamida amalga oshiriladigan fizik harakatga](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_30.png)
![almashtirish imkoniyati. Bunda ekranning ixtiyoriy sohasi sichqoncha kursori
harakati va tugmasi bosganda faollashishi mumkin bo’lgan oluvchi (adresat)
sifatida qaraladi.
Ta’sir ko’rsatish reaksiyasi bo’yicha quyidagi turdagi adresatlar farqlanadi:
– ko’rsatish va tanlash (piktogrammani yoyish, faol oynani aniqlash va h.k.);
– tortish va “rezinali ip” (obyekt yoki uning chegarasini ko’chirish);
– ekranli knopka va “sirpanuvchi” to’siq.
Grafik interfeyslarda ekrandagi tasvirni o’zgarishini o’zida ifodalaydigan
dinamik vizual signal bilan so’ngi bo’lmagan ahamiyatiga qo’yilmaydi. Bu
signallarning asosiy maqsadi foydalanuvchiga qo’shimcha axborotni taqdim etishi
bo’ladi.
Kiritish–chiqarish komponentlari. Yuqorida aytilganidek, ilova
oynalaridan axborotni kiritish–chiqarish uchun ishlatiladigan maxsus
komponentlar joylashtirilishi mumkin. Har qanday zamonaviy dasturiy
ta’minotning interfeysi bir qancha menyu kiritiladi: asosiy menyu yoki “qalqib
chiquvchi” iyerarxik menyu, piktografik menyu (asboblar paneli) va turli
holatlardagi kontekst menyu. Ko’rsatilgan menyularning ixtiyoriysi jadvalli
shaklda foydalanib, foydalanuvchi bilan muloqotni amalga oshiruvchi kiritish–
chiqarish komponentdan tuziladi. Iyerarxik menyu dasturiy bajariladigan amallar
ta’minlash bilan agar ularning soni 5–8 dan oshmasa tashkillashtirish uchun
ishlatiladi .
Asboblar paneli va kontekst menyu ko’p ishlatiladigan buyruqlarni
ta’minlash uchun va foydalanuvchiga nisbatan erkin harakat qilish imkoniyatini
berish. Bundan tashqari, interfeyslarda ularda qanday muloqot shakli amalga
oshirishiga mos ravishda uch guruhga ajratiladigan boshqa kiritish–chiqarish
komponentlari ham foydalaniladi.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_31.png)
![2.2. Grafik foydalanuvchi interfeyslarida muloqotlarni amalga oshirish
Odatda , rivojlangan foydalanuvchi interfeysiga ega dasturiy ta ’ minot ikkala
tipdagi foydalanuvchi boshqaradigan va tizim boshaqaradigan muloqotlardan
foydalanadi .
Foydalanuvchi tomonidan boshqaruvchi muloqotlarni amalga oshirish.
Foydalanuvchi tomonidan boshqaradigan muloqotni amalga oshirish uchun turli
ko’rinishdagi menyular qo’llaniladi: asosiy, asboblar paneli, kontekstli va
tugmachali, ya’ni alohida tugmachalardan iborat. Menyuga muqobil sifatida asosiy
buyruqlarga tugmachalarning ma’lum kombinatsiyalarini mos qo’yib muloqotning
diriktev shaklidan foydalanish maqsadga muvofiqdir. Bundan tashqari, menyuni
klaviatura bilan boshqarish imkoniyatini ko’zda tutish maqsadga muvofiq. Bu esa
tizim bilan ishlashning ko’p vaqtida foydalanuvchi matni yoki ma’lumotlarni
kiritsa, ya’ni klaviatura bilan ishlashda juda muhimdir.
Menyu. Menyu ishlab chiqilayotgan dasturiy ta’minot muloqotlar grafigi
yordamida loyihalanadi. Bunda, agar amallar soni beshdan oshmasa, u holda
odatda tugmachalardan foydalanadi. Agar amallar soni 5-10 dan oshmasa, u holda
– bir darajali menyu va nihoyat agar amalga oshiriladigan amallar soni 10 dan
oshsa, u holda „pastga tushuvchi” ikki darajali iyerarxik menyudan foydalaniladi.
Pastga tushuvchi menyu. Iyerarxik menyuning birinchi darajasi amallar
asosiy guruhlari nomlarini o’z ichiga olishi lozim. An’ana bo’yicha birinchi fayl
ikkinchisi – tahrirlash, uchinchi –ko’rinish, oxirgisi – ma’lumot bo’ladi.
Bandlarning bunday taqsimlash fayllarida, masalan, matn va grafik muarrirlarda
joylashgan ma’lumotlarni qayta ishlash dasturlari uchun xos. Keyingi paytda
bandlarning bunday joylashishi bilan muammolar paydo bo’lmoqda. Ko’pgina
dasturlar bu an’anaviy usul bilan ishlamaydi.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_32.png)
![2.1-jadval. Interfeysda ishlatiladigan komponentlar
Komponent Ko’rinishi Amalga
oshirish
shakli Foydalanish xususiyati
Label – belgi Frazali Odatda, ishlash jarayonida
o’zgartirilmaydigan
х abarlarni chiqarish
Edit –birsatrli redaktor Frazali Uzun bo’lmagan xabarlarni
kiritish– chiqarish: so’z, son,
va h. k.
Memo– ko’p satrli
redactor Frazali Matnli ma’lumotlarni kiritish
– chiqarish
Button – tugma Jadvalli Harakatni amalga oshirish
CheckButton- tanlash
elementi Jadvalli Parametrni tanlash yoki
inkor etish
RadioGroup –
radiotugmalar guruhi Jadvalli Bir yoki bir nechta
variantlardan birini tanlash
(ularning soni 6 -10 dan
oshmagan hollarda)
ListBox – ro’yhat Jadvalli Bir yoki bir nechta
variantlardan birini tanlash
TrackBar – ko’rsatkich Jadvalli Belgilangan oraliqdan sonni
tanlash
TabControl,
PageControl – zakladka Jadvalli Ko’p parametrlarda
harakatni yahshilash](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_33.png)
![DBNavigator –
navigator Jadvalli Jadvaldagi harakatni tashkil
etish
ComboBox –element
qo’shish imkoniyatli
ro’yhat Kombina
siyali Ro’yxatdan tanlash yoki
qiymat kiritish
SpinEdit–qiymatni
oshirish va kamaytirish
imkoniyatiga ega bir
satrli redaktori Kombina
siyali Qiymat kiritish yoki
o’zgartirish
Agar amallar soni 70-80 dan oshsa u holda bunday katta sonli amallarga ega
ko’rgazmali menyuni hosil qilish muammosi paydo bo’ladi. MS Word ishlab
chiqaruvchilari qiziq yechimni taklif etishgan. Ular moslashuvchan iyerarxik
menyuni amalga oshirishdi, unda ikkinchi darajali menyu oynalari doimiy
o’zgaradi, faqat foydalanuvchi ishlayotgan amallarnigina aks ettiradi. Agar
foydalanuvchi zarur amalni topmasa, u holda bir necha sekunddan so’ng yoki
Wordning maxsus tugmachasini bosganda menyu oynasi to’liq namoyish etadi.
Asboblar paneli. Asboblar paneliga ko’p foydalaniladigan amallar
piktogrammadan foydalaniladi. Agar bunday amallar to’plami ishlab
chiqarilayotgan ta’minoti bilan bajariladigan ishlar xususiyatiga bog’liq bo’lsa, u
holda foydala– nuvchi asboblar panelini o’zining ixtiyoriga ko’ra shakllantirish
imkoniyati bilan bilan ta’minlanish maqsadga muvofiq. Misol sifatida, Microsoft
Word sozlash (Servis/sozlash) amali shunday yo’lga qo’yilganligini qarash
mumkin.
Kontekstli menyu. Kontekstli menyu ilovalar oynasi berilgan sohasidan
murojaat qilish ehtimoli bilan ishlab chiqaruvchi nuqtai nazaridan tashkil bo’lgan
amallarini o’z ichiga oladi. “Foydalanish qulayligi” testlashtirish jarayonida
kontekstli menyuning mazmuni aniqlashtirish mumkin. Asosiy menyu holidagi](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_34.png)
![kabi bu menyuning amallar soni 6-8 dan oshishi yaxshi emas. Foydalanuvchiga
zarur amalni izlashni yengillashtirish uchun konteksli menyu amallarini gorizontal
chiziqlar bilan guruhlarga ajratish maqsadga muvofiq.
Tizim tomonidan boshqariladigan muloqotlarni amalga oshirish. Tizim
bilan boshqariladigan muloqotlarni amalga oshirish uchun odatda muloqot
oynalaridan foydalaniladi. Agar muloqot jarayonida sozlanadigan elementlar soni
ko’p bo’lmasa va muloqotga ketma –ket ssenariy mos kelsa, u holda barcha zarur
komponentalarni o’z ichiga oluvchi bitta muloqot ostiga loyihalanadi. Bunday
oyna ko’pincha forma deb ataladi. Agar muloqot keyingi savol olingan javoblarga
bog’liq bo’lgan kuchli tarmoqlangan tuzilmaga ega bo’lsa yoki muloqot jarayonida
sozlanadigan elementlar soni ko’p bo’lsa, u holda muloqotning har bir qadami
uchun o’zining muloqot oynasi loyihalanadi. Formalarni loyihalash interfeysning
zarur komponentlarini tanlash va ularni muloqot oynasida joylashtirishdan iborat.
Agar komponentalar soni 4-5 dan ko’p bo’lsa, u holda ularning ramkalardan
foydalanib vizual bo’lishi maqsadga muvofiq.
Muloqot oynalarni ketma – ketligini loyihalash. Yuqorida eslatib
o’tilganidek, tizim bilan boshqariladigan muloqotlar asosida qat’iy yoki qat’iy
bo’lmagan holda berilgan ssenariy yotadi. Bu ssenariy oynasida ketma – ketligi
bilan amalga oshiriladi. Ssenariyning qat’iylik darajasiga bog’liq bo’lmasdan
bunday ketma – ketlikni oldingi qadamga qaytish imkoniyatini nazarda tutish
zarur.
Muloqotlarni amalga oshirish natijasida olingan interfeys to’liqligicha
tekshiriladi, so’ngra foydalanuvchiga qo’llanish qulayligini testlash uchun taklif
etadi. Shubha bo’lganda bir necha variant taklif etish mumkin. Interfeys
ma’qullanganidan so’ng tegishli protseduralar kodlanib, amalga oshiriladi.
2.3. To’g’ridan – to’g’ri monipulyatsiyali foydalanuvchi interfeyslari va
ularni loyihalash](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_35.png)
![WIMP interfeyslarida ko’zda tutilgan to’g’ridan – to’g’ri manipulyatsiyalash
imkoniyati ilovalar uchun to’g’ridan – to’g’ri manipulyatsiyali obyektga
yo’naltirilgan interfeyslarni yaratishga imkon beradi.
Bu tipdagi interfeyslar tashqi darajadagi muloqotning direktivali shaklidan
foydalanadi: buyruqni kiritish obyekt piktogrammasi bilan ma’lum amallarni
sichqoncha bilan bajarishda amalga oshiriladi. Bu interfeyslarning asosiy
elementlari: metafora, obyektlarni taqdim etishning Drag and Drop
texnologiyasi(“ko’chirib olib berding va tashlading”).
Metaforalar . Metafora – bir obyektni xossa yoki belgilarini boshqasiga
fikran ko’chirish. Interfeyslarda metaforalardan foydalanish, foydalanuvchida
mavjud tajribani (kundalik hayotda yoki ish joyida o’xshash amallarni bajarishning
mental modellarini) faollashtirishni nazarda tutadi.
To’g’ridan – to’g’ri manipulyatsiyalash interfeysi foydalanuvchiga kasb
faoliyatida va turmushda ko’p marta uchragan unga tanish elementlarni o’z ichiga
olgan muhitni ta’minlashi va unga alohida obyektlar bilan ishlay olish imkoniyatini
berishi lozim. Metaforalarning borligi foydalanuvchi uchun interfeysni
o’zlashtirish jarayonini soddalashtiradi. Masalan, fayllarni o’chirish uchun
Windows foydalanadigan “chiqindini tashlash” metaforasi foydalanuvchiga bu
amalni o’zlashtirishini osonlashtiradi.
Metaforalardan juda ehtiyotlik bilan foydalanish kerak, chunki bundagi
ma’no interfeysning barcha elementlariga beriladi, masalan, o’xshash elementlar
o’zlarini o’xshash tarzda bo’lishlari, bitta rang bilan ajratilgan elementlar bir – biri
bilan ma’lum bog’lanishda bo’lishi lozim. Interfeys elementlari orasidagi simantik
moslikning bo’lmasligi ulardan nima kutilayotgan va haqiqatda nimani
bajarayotganligi foydalanuvchiga noqulayliklar tug’diradi.
Shuni ham e’tiborga olish kerakki, to’liq moslik foydalanuvchini aldashi
mumkin, chunki u real predmetlar bilan emas, ularning modellari bilan ish
ko’ryapti. Demak, uning imkoniyatlari chegaralangan, bu haqida eslatib o’tish
zarur. Shuning uchun tasvirlarni juda ham haqiqiylashtirish kerak emas.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_36.png)
![Metaforalar va animatsiyalar. Metaforalarni amalga oshirishda
multimediya vositalariga asosan animatsiyaga ko’proq e’tibor qaratilmoqda
yuqorida aytilganidek, harakat e’tiborini jalb etadi, kadrlarning tez almashishi esa
oldingisi bilan ushbu kadrning bog’liqligini aniqlashga va bu kadrni o’rganishga
ma’lum vaqtni talab etadi. Demak, multiplikatsiyadan foydalanib nafaqat
foydalanuvchini zeriktirmaslik, balki o’zgargan vaziyatga moslashish uchun vaqtni
qisqartirib uni kadr almashishiga tayyorlash mumkin. Masalan, uzun ro’yhatni
cheksizlikka ketuvchi devor ko’rinishida ko’rsatish mumkin. U holda, bu devor
bo’yicha, nomlarni tabiiy yiriklashtirish bilan qo’shib olib boriladigan harakat
rasmni jiddiy o’zgarmasdan zarur ma’lumotni izlab ro’yhatni qarashga imkon
beradi. Bunda inson ongida Obyektlarning bir xilligi saqlanadi, shuning uchun u
ular bilan o’zaro hamkorlikka doimiy tayyor turadi.
Lekin insonning idroki xususiyatlari bilan bog’liq muammolarni hal eta turib
animatsion inetrfeyslar ishlab chiquvchi va dasturchilar uchun qo’yilgan
qo’shimcha muammolarni tug’dirdi. Dasturning odatdagi funksional va interfeys
darajasiga yana vizual daraja ham qo’shiladi. Bunday interfeysni amalga
oshiruvchi dastur hech vaqt to’xtamaydi, chunki foydalanuvchi tomonidan
buyruqning kiritilishini kutish vaqtida u tegishli kadrlarni aks ettirishni davom
ettiradi. Bunday dasturlarning asosida vaqtli dasturlash g’oyasi yotadi. Tizimdagi
tashqi va ichki hodisalar bilan ekrandagi tasvirni bog’lash imkonini beradigan
hodisaviy dasturlashdan farqli ravishda vaqtli dasturlash modellashtirilayotgan
jarayonlar holati va foydalanuvchi harakatlariga bog’liq ravishda
proeksiyalanayotgan kadrlar ketma – ketligi o’zgarishini ta’minlaydi.
To’g’ridan-to’g’ri manipulyatsiyali interfeysdagi Obyektlar va ularning
ko’rinishlari . To’g’ridan-to’g’ri manipulyatsiya interfeysi Obyektlarining uchta
asosiy tipi mavjud: Obyektlar – ma’lumotlar, Obyektlar – konteynerlar va
Obyektlar – asboblar. Obyektlar – ma’lumotlar foydalanuvchini axborot bilan
ta’minlaydi. Bu matnlar, tasvirlar, elektron jadvallar, musiqa, video va h. k. lar
hamda ularning ixtiyoriy kombinatsiyasi bo’lishi mumkin. Operatsion tizim](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_37.png)
![doirasida bunday Obyektlarga Obyektni ochishda ishga tushiriladigan ilovalar mos
keladi. Ilova masshtabida Obyektga bitta yoki bir nechta forma mos keladi, ularda
Obyektning mazmuni turli ko’rinishlarda tasvirlanadi. Obyekt o’z ichiga olgan
amallar formaning hodisalarni qayta ishlovchilari bilan amalga oshiriladi.
Obyekt – konteynerlar o’z ichki obyektlari bilan, jumladan boshqa
konteynerlari bilan, masalan, ularni nusxalash yoki ixtiyoriy tartibda saralash kabi
manipulyatsiyalarni bajarilishi mumkin. Tipik konteynerlarga papkalar, savatlar va
h. k. lar kiradi. Konteyner ochilganda u saqlayotgan komponentalar ko’rinadi va
ular bilan ishlash imkoniyati paydo bo’ladi. Bunda komponentalar piktogrammalar
bilan belgilanishi yoki jadval ko’rinishida tasvirlanishi mumkin.
Obyekt – qurilmalar ko’pincha real dunyodagi mavjud qurilmalarni
tasvirlaydi: telefonlar, fakslar, printerlar va h. k., ulardan interfeysning abstrakt
olamida bu qurilmalarni ifodalashda foydalaniladi. Bunday obyektni ochilganda
odatda uning sozlanishini ko’rish mumkin.
Demak, har bir obyektga hech bo’lmaganda bitta oyna mos keladi. Dastlabki
holatda bu oyna piktogramma bilan tasvirlangan, lekin zarurat paytida uni ochish
va talab qilingan amallarni bajarish, masalan, obyektni sozlash mumkin. Obyekt
oynasi ochiq holatda menyu va asboblar panelini o’z ichiga oladi. Piktogrammaga
esa obyekt ustidagi amallar ro’yhatini o’z ichiga olgan kontekst menyu mos kelishi
lozim.
Piktogramma nomi o’zicha har bir obyekt tipi uchun shakllanadi. Obyekt -
ma’lumotlar piktogrammasi saqlanayotgan ma’lumotlarning nomlariga mos
nomlarni beradi, ma’lumotlar tipi esa piktogrammaning o’zi bilan kodlanadi.
Piktogramma konteyner yoki piktogramma qurilma nomini obyektning o’zi
belgilaydi. Shuning uchun uning ichidagilariga, bog’liq emas.
Obyektlar tiplari orasidagi farqlar shartli, chunki bitta Obyekt turli
vaziyatlarda Obyekt – ma’lumot, obyekt – qurilma, obyekt – konteyner sifatida
bo’lishi mumkin. Masalan, printer odatda obyekt – qurilma sifatida qaraladi,
ammo u obyekt – konteyner sifatlariga ham ega bo’lishi mumkin, chunki chop](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_38.png)
![etish navbati turganlik obyekt – ma’lumotlarni o’z ichiga olishi mumkin. Mos
ravishda Windowsda printer chop etishga navbat oynasi(2.3a– rasm) va sozlashlar
oynasi (2.3b-rasm). Bu holda ko’rinish nomini obyekt oynasi sarlavhasida
ko’rsatish maqsadga muvofiq.
a)
b)
2.3-rasm. Printer obyekti
Drag and Drop texnologiyasi . Drag and Drop texnologiyasi(“o’tkazdi va
tashladi”) IBM (CUA – Common User Access) firmasining foydalanuvchi
interfeyslarini ishlab chiqish bo’yicha qo’llanmada tasvirlangan to’g’ri
manipulyatsiyalarning asosiy prinsiplarini aniqlaydi.
– obyektni siljitish natijasi foydalanuvchi kutishiga mos kelishi lozim:
– foydalanuvchilar to’satdan axborotni yo’qotmasliklari lozim;](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_39.png)
![– foydalanuvchi noto’g’ri harakatni bekor qilish imkoniyatiga ega bo’lishi
lozim.
Bu texnologiya to’g’ri manipulyatsiyalash amalini vizuallashtirish asosiy
prinsiplarini ham aniqlaydi.
– dastlabki belgilash - obyekt qamrab olinganligini xabar berishi uchun
foydalanuvchiga teskari aloqa sifatida foydalaniladi, Windowsda bu maqsadda
rang bilan ajratish foydalaniladi;
– ko’chirishni vizuallashtirish - bajarilayotgan amalni identifikatsiyalash
usuli foydalaniladi;
– maqsadli ajratish – mo’ljallangan manzilni identifikatsiyalash uchun
foydalaniladi, bu bilan agar obyektni joriy vaqt momentida qo’yib yuborsa qayerga
tushishini ko’rsatadi;
– harakatni vizuallashtirish – amalni yakunlanishini kutish vaqtini belgilash
uchun ishlatiladi, odatda, bu maqsadda animatsiya yoki kursorning “qumli soat”ga
o’zgarishi qo’llaniladi.
Aytish kerakki, ikkita mo’ljallangan manzili mavjud: bittasi obyektni,
ikkinchisi uning nusxasini qabul qiladi. Masalan, agar foydalanuvchi hujjati savat
(Karzina)ga tashlansa, ekrandan yo’qoladigan obyektning o’zi ham yo’q bo’ladi.
Agar o’sha hujjat printerga tashlansa u holda printerga hujjat nusxasi yuboriladi.
Hujjat piktogrammasi qoladi.
Windowsda mos harakatlarning hujjat nusxasi berilayotgan asbob
piktogrammasi ustida harakatlanadigan paytda “+” paydo bo’lishi bilan
identifisirlanadi. Agar qurilmalar uchun ikki turdagi amalning imkoni bo’lsa u
holda amal turini aniqlashtirishni ko’zda tutishi lozim. Windows bu holatda Ctrl
tugmasini bosganda nusxalashni va aks holda ko’chirishni bajaradi.
To’g’ridan–to’g’ri manipulyatsiya interfeyslarini loyihalash. To’g’ridan
– to’g’ri manipulyatsiya interfeyslarini loyihalash dasturiy ta’minot uchun
ishlatiladigan muloqot graflari asosida bajariladi va quyidagi proseduralarni o’z
ichiga oladi:](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_40.png)
![– ekranda tasvirlanishi lozim bo’lgan predmet soha obyektlar to’plamini
shakllantirish, bu holda asos sifatida foydalanish variantlari emas, predmet
sohaning konseptual modelidan foydalaniladi;
– obyektlarni tahlil qilish, ularning tiplari va tavsiflarini, hamda bu obyektlar
bilan bajariladigan amallar ro’yhatni aniqlash;
– obyektlar o’zarohamkorligini aniqlashtirish va to’g’ridan–to’g’ri
manipilyatsiyalash matritsasini tuzish;
– obyektlarning vizual tasvirlarini aniqlash;
– obyektlar oynalari menyusi va kontekst menyularini ishlab chiqish;
– interfeys protiplarini yaratish;
– foydalanuvchiga qulayligini testlash.
2.4. Foydalanuvchilar interfeyslarining inte le ktual elementlari
Keyingi yillarda asosan interfeysga sun’iy intelekt elementlari kiritilgan
foydalanuvchi interfeyslarining ko’pgina yangi istiqbolli elementlari paydo bo’ldi,
bu ularning nomlarida ham namayon bo’lmoqda: Master, Maslahatchi, Agent.
Ijtimoiylashgan foydalanuvchi interfeyslarini yaratishga ko’pgina urinishlar bo’ldi.
Bunday interfeysning asosida jonlantirish, ya’ni “shahsiga ega” interfeysni yaratish
g’oyasi yotadi. Ko’ngil ochar dasturlar masalan, uy hayvonlarning turli
holatlardagi yetarlicha murakkab harakterini amalga oshiruvchi Cats (Mushuklar)
va Dogs (Itlar), dasturlari shuni ko’rsatadiki, bu texnik jihatdan bajarilishi mumkin
bo’lgan masala. Ammo bu sohada psixologik muammolar mavjud. Misol sifatida
quyida qaralgan Microsoft Offise ning “beozor” Maslahatchisi ham ko’p
foydalanuvchilarda qattiq salbiy ta’sirlanish uyg’otmoqda. Hozirgacha bunday
“shaxsni” yaratishga bo’lgan urinishlar natij a bergani yo’q.
Maslahatchilar . Maslahatchilar ko’rsatma shaklida bo’ladi. Odatda ularni
Справка menyusidan, oynaning buyruqlar satri yoki qalqib chiquvchi menyu
yordami bilan murojat qilish mumkin. Maslahatchilar foydalanuvchilarga aniq
masalalarni bajarishda yordam beradi, lekin faqat agar foydalanuvchi unga nima
qilish kerakligni taklif etsa. Masalan, Microsoft Word da ishlayotgan](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_41.png)
![foydalanuvchi hujjatga rasm qo’ymoqchi bo’lsa, lekin uni qanday qo’yishni
bilmasa, u Yordamchi–Skripkani faollashtiradi va maxsus maydonga savol kiritadi
( 2.4 a–rasm). Ma’lumotnomali tizim savolni tahlil qiladi va foydalanuvchining o’zi
zarur ma’lumotni tanlashini hisobga olib, foydalanuvchini qiziqtiruvchti savol
bilan bevosia bog’liq mavzular ro’yhatini shakllantiradi ( 2.4 b–rasm).
2.4 –rasm. Microsoft Word 2010 ning Yordamchi–Skripkasi.
a–so’rov, b–mavzular ro’yxati
Ustalar. Usta dasturi keng tarqalgan, lekin dasturlarni yoki qurilmalarni
o’rnatish kabi alohida foydalanuvchi tomonidan bajariladigan masalalarni
bajarish uchun foydalaniladi. Bunga o’xshash amallarni bajarish
foydalanuvchidan ketma–ketlikni dastur–usta talab qiladgan murakkab o’zaro
bog’liq qarorlarni qabul qilishni taqazo etadi. Intelektual Usta har bir qadamda
ko’rish oynasida oldingi savollarga foydalanuvchi javoblari natijalarini namoyish
etib, unga vaziyatda qanday yo’l tutishiga yordam beradi.
Usta muloqotning ketma–ket yoki daraxt shaklidagi senariyni amalga
oshiradi, shuning uchun undan yaxshi strukturalangan, ketma–ket hal etiladigan
masalalarni yechish uchun foydalanish maqsadga muvofiq ( 2.5 –rasm). Bunda: a) b)](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_42.png)
![– foydalanuvchiga oldingi qadamga qaytish imkonyatini berishi;
– Usta ishini bekor qilish imkoniyatini ko’zda tutish;
– qadamlarni raqamlash va agar bunday qadamlar soni uchtadan ko’p bo’lsa,
Ustaning qadamlar sonini foydalanuvchiga yetkazish;
– foydalanuvchiga har bir qadamni tushuntirib borish;
– iloji boricha har bir qadamda bajarilgan amallar natijalarini namoyish
etish.
2.5 –rasm. Windows 2010 da Printerni o’rnatish ustasining birinchi oynasi
Dasturiy agentlar. Hozirgi paytda katta ishni bajarish uchun
foydalaniladigan dasturiy agentlar katt qiziqish uyg’otadi. Bunday dasturiy agent
foydalanuvchi o’z vazifalarining bir qismini berishi mumkin bo’lgan dasturiy
ta’minot elementi hisoblanadi. “Agent–Yordamchilar” ning asosiy funksiyalari:
kuzatish, izlash va boshqarishdan iborat. Quyidagilar farqlanadi:
– ko’rsatilgan masalalarni bajarish uchun sozlanadigan agent–dasturlar;
– o’rganishga qodir, masalan, foydalanuvchi harakatlarini qayd etish
(magnitofon tipidagi) agent–dasturlar.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_43.png)
![Oxirgi tipdagi agentlarni yaratish, masalan, Microsoft Offise makroslar
mexanizmi orqali mumkin.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_44.png)
![3-§. Delphi muhitida ilovalar yaratish va unda qulay interfeysni
tashkillashtirish
3.1. Delphi muhiti va foydalanuvchi bilan muloqotni tashkillashtirishda
qo’llaniladigan komponentlar
DELPHI muhiti manitor ekranida bir vaqtda ochilgan bir necha oynalar
ko’rinishida bo’ladi. Oynalar soni, joylashuvi, o’lchami va ko’rinishi zaruriyatga
qarab foydalanuvchi tamonidan o’zgartirilishi mumkin, bu esa ish samarodorligini
oshirishga xizmat qiladi. DELPHI yuklangach 3.1–rasmda keltirilgan rasmga
o’xshash ko’rinishni ko’rasiz.
Bosh oyna ekranda doimo mavjud va dastur tuzish jarayonini boshqarish
uchun mo’ljallangan. Asosiy menyu loyihani boshqarish uchun barcha zarur
vositalarga ega. Piktogrammalar asosiy menyuning eng ko’p qo’llaniladigan
buyruqlarni bajarishni osonlashtiradi.
Endi ilovaning interfeysini tashkilashtirishda ishlatiladigan3
6
4
5
3.1–rasm . Bosh oyna ; 2 – asosiy menyu ; 3 – asosiy menyu
piktogrammalari ; 4 – obyektlar inspektori oynasi ; 5 – programma teksti
oynasi ;
6- asosiy forma oynasi ; 7 – komponentlar menyusi1
2 7](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_45.png)
![kopmonentlarning ayrimlarini keltiramiz:
TMainMenu – o’z dasturingizga bosh menyu qo’shish
imkonini beradi. TmainMenu ni formaga qo’ygan vaqtda u kichkina belgi
ko’rinishini oladi; bunday belgilarni "ko’rinmas komponent" deb ataydilar, chunki,
dastur bajarilash vaqtida ular ekranda ko’rinmaydi. Menyuni yaratish uch
qadamdan iborat: (1) TMainMenu formaga o’rnatish, (2) obyektlar inspektorining
Items xususiyati yordamida Menyu dizaynerini chaqirish, (3) Menyu Dizaynerida
menyu qismlarini kiritish.
TPopupMenu yordamchi menyuni yaratish. Bu menyu
sichqonchaning o’ng tugmasi bosilganda ko’rinadi.
TLabel matnlarni ekranda namoyish qilish uchun qo’llanadi.
Agar siz obyektlar inspektorining Font xususiyatiga sichkonchani ikki marta
bossangiz, Label ning shrifti, rangi, harflar rangi va o’lchamlarini o’zgartishingiz
mukin.
TEdit – Windowsdagi standart ma’lumot kiritish oynasi. U
qisqa matnlarni namoyish qilishi va dastur bajarilish vaqtida foydalanuvchiga o’z
ma’lumotlarini kiritish imkonini beradi.
TMemo – TEditning boshqacha ko’rinishi. Katta mantlar bilan
ishlashni ko’zda tutadi. TMemo matn qismlarini qatordan qatorga ko’chirishi,
buferda saqlashi, oxirgi amallardan voz kechishi, umuman olganda oddiy muxarrir
amallarini bajara oladi. TMemo 32Kb matn hajmi bilan chegaralanadi, bu
taxminan 10-20 sahifa matnga tengdir.
TButton dastur bajarilash vaqtida tugma bosilishi bilan biror
amal bajarilishini ko’zda tutadi. Delphida hamma narsa oddiy. TButtonni formga
ko’yib, unga ikki marta sichqon tugmasini bossak, biz dastur matni muharririda](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_46.png)
![tugma bosilish holatiga dastur tuzishimiz mumkin bo’lgan oynaga o’tamiz. Endi
dastur matnini bajariladigan buyruqlar kodi bilan to’ldirish kerak.
T CheckBox c hap tomonida kichkina darchasi bo’lgan matn
satrini akslantiradi. Darchaga u ning belgilanganligini bildiruvchi belgi quyish
m umkin. Masalan, Worddagi Pechat muloq ot oynasining Pechat v fayl bo’limida
aynan shu obyekt ishlatilgan.
TRadioButton bir nechta holatlardan birini tanlash imkonini
beradi. Masalan, Worddagi Pechat muloqot oynasining chop qilinishi kerak
bo’lgan sahifalar oralag’ini tanlash bo’limida aynan shu obyekt ishlatilgan.
TListBox ro’yxatli ma’lumotlarni namoyish qilishga
mo’ljallangan masalan Worddagi Otkrыt buyrug’i yordamida ochiladigan muloqot
oynasidagi fayllar va kataloglar ro’yxati aynan shu obyektga joylashtirilgan.
TComboBox tashqi ko’rinishidan ListBoxga o’xshab ketadi,
ular orasidagi farq ComboBoxning yuqorisida ma’lumot kiritish mumkin bo’lgan
maydoni ham bor. ComboBoxning ko’plab turlari mavjud, ko’p ishlatiladigani esa,
ro’yxati pastga ochiladigan (drop-down combo box)dir.
TScrollbar – o’tkazish yo’lakchasi. Ko’pincha tahrirlanadigan
yoki ko’rinadigan ma’lumotlar ekran chegaralaridan chiqib ketganda paydo
bo’ladi.
TGroupBox Windowsga formadagi obyektlarning qanday
joylashganligini bildirish uchun qullash mumkin.
TPanel – TGroupBoxga o’xshash obyekt bo’lib, bezash uchun
ishlatiladi.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_47.png)
![3.2. Delphi muhitida grafik interfeysni tashkil qilish va undan foydalanish
Delphi muhitida foydalanuvchining grafik interfeysini tashkillashtirish
uslublarini konkret masalalar misolida qarab chiqamiz.
Ma’lumki, dasturlashtirishning vizual muhitida ilovalar yaratish 2 bosqichga
ajratiladi. Bular foydalanuvchi interfeys yaratish bosqichi va kodlashtirish
bosqichlari hisoblanadi.
Masala sifatida quyidagilarni qaraymiz:
- funksiya grafigini chizishni vizuallashtirish;
- matritsalar ustida amallar;
- algebraik tenglamalarni yechish;
- chiziqli tenglamalar sistemasini yechish.
1-masala uchun foydalanuvchi uchun interfeysni amalga oshirishda
quyidagilar e’tiborga olindi (3.2-rasm): foydalanuvchi funksiyaning ko’rinishini
tanlashi, funksiyaning parametrlariga qiymatlar berishi, grafikni chizish rangini
ko’rsatishi, chizish suratini aniqlashi va hokazo.
3.2-rasm. F unksiya grafigini hosil qilish interfeysi](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_48.png)
![Bunda grafikni aks ettirish uchun TImage, funksiyaning turini tanlash uchun
TCombobox, funksiya parametrlarinin kiritish uchun TSpinEdit, chizish suratini
tanlash uchun TRadioGroup, chizishni tashkillashtirish uchun TButton,
shuningdek o’zgarmas matnlarni kiritish uchun TLabel komponentlari ishlatildi.
Agar foydalanuvchi y=ax 2
+bx+c funksiyani tanlab, parametrlar uchun a=1,
b=0, c=0 qiymatlarni berib, “grafik chizish” tugmasi bosilsa y=x 2
funksiyaning
grafigi hosil bo’ladi (3.3-rasm).
3.3-rasm. y=x 2
funksiya grafigi
2-masala interfeysiga foydalanuvchi ilova taqdim etadigan menyu yoki mos
tasvir aks etgan piktogramma orqali o’tishi mumkin. Bunda matritsalar ustida
bajariladigan amallar (matsilarni qo’shish va ayirish, ko’paytirish, matritsani](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_49.png)
![skalyarga ko’paytirish, matritsalarning determinanti va teskarisini topish)
keltirilgan (3.4-rasm).
3.4-rasm. Matritsalar ustida amallar bajarish interfeysi
Bunda matritsa elementlarini vizual aks ettirish uchun TStringgrid,
matritsalar o’lchamlarini va o’zgarmas sonni kiritish uchun TEdit, matritsalar
ustida bajariladigan amallarni tanlash uchun TCombobox, tanlangan amalni
bajarish uchun TButton, shuningdek o’zgarmas matnlarni kiritish uchun TLabel
komponentlari ishlatildi.
Matritsalarni qo’shish masalasini qaraylik. Mos ravishda A va B matritsalar
uchun satrlar va ustunlar soni TEdit kiritish maydoniga qiymatlar beriladi. So’ngra
“Matritsani qurish” tugmasi bosiladi. Natijada kerakli satr va ustunga ega](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_50.png)
![TStringgrid komponentasi hosil bo’ladi. Bunga matritsa elementlari qiymatlarini
kiritamiz (3.5-rasm).
3.5-rasm. Matritsalarni qo’shish uchun dastlabki qiymatlarni kiritish
Bunda “A matritsa bilan B matritsaning yig’indisi” amalini tanlab,
“Bajarish” tugmasi bosilsa, natijaviy D matritsa hosil bo’ladi (3.6-rasm).](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_51.png)
![3.6-rasm. Hosil qilingan D matritsa
A matritsaning determinatini hisoblash uchun mos amal tanlanib, bajarish
tugmasi bosiladi. Natija xabar oynasiga chiqariadi (3.7-rasm).
3.7-rasm. A matritsa determinantini aks ettiruvchi xabar oynasi
A va B matritsalar ko’paytmasini hisoblash uchun qiymatlar kiritilib, matritsalarni
ko’paytirish amali tanlanadi va “Bajarish” tugmasi bosiladi. Natijada matritsalar
ko’paytmasi hosil bo’ladi (3.8-rasm).
3.8-rasm. A va B matritsalar ko’paytmasi
Xuddi shuningdek, matritsani skalyarga ko’paytirish amalini bajarish uchun
A matritsa tashkillashtiriladi va C o’zgarmas son kiritilib, “A matritsani songa
ko’paytirish” amali tanlanadi. “Bajarish” tugmasi bosilgandan so’ng natija
boshlang’ich matritsa o’rnida hosil bo’ladi.
3-masalada tenglamalar ildizlarini topish uchun mo’ljallangan ищэдшиб
interfeys ham shunga mos tashkillashtirilgan. Avvalo forma 3 ta mantiqiy qismga](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_52.png)
![TGroupbox komponentlari bilan ajratilgan. Bu komponentalarning Caption
xossasiga tenglamalar umumiy ko’rinishi izoh sifatida keltirilgan (3.9-rasm).
3.9-rasm. Tenglamalar ildizlarini topish interfeysi
Kvadrat tenglama koefitsentlari uchun a=1, b=4, c=-5 qiymatlar kiritilib
“ildizlarni topish” tugmasi bosilgach mos TEdit satrlarida natijalar hosil bo’ladi
(3.10-rasm).](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_53.png)
![3.10-rasm. Kvadrat tenglama ildizlarini topish
Keyingi masala sifatida chiziqli tenglamalar sistemasining ildizlarini topish
qaralgan va unga mos interfeys tashkillashtirilgan (3.11-rasm).
3.11-rasm. Chiziqli tenglamalar sistemasini yechish interfeysi
Bunda tenglamalar soni kiritilib “OK” tugmasi bosilgach, TStringrid
komponentida barcha koeffitsentlar kiritiladi va “yechish” tugmasi bosiladi.
Natijada tenglamalar sistemasining ildizlari o’ng qismida aks etadi (3.12-rasm).](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_54.png)
![3.12-rasm. Tenglamalar sistemasining ildizlarini topish
Xulosa
B itiruv malakaviy ishida foydalanuvchi uchun mo’ljallangan grafik interfeys
elementlar ini va qulayliklar i ni zamonaviy programmalash texnologiya lar i asosida
tashkillashtirish masalasi muhokama qilingan va quyidagi natijalarga erishildi:
- tanlab olingan masalalar ilovalaridan foydalanuvchilar ishlatishiga
mo’ljallangan interaktiv interfeyslar ishlab chiqildi;
- foydalanuvchi interfeyslarini yaratishning asosiy konsepsiyalari va ularni
yaratish metodikasi bo’yicha tavsiyalar berildi;
- foydalanuvchi interfeyslarining turlari va ularni ishlab chiqish bosqichlari
tadqiq qilindi va amaliy qo’llanildi;
- interfeysni loyihalashda inson psixofiziologik xususiyatlarini hisobga
olish prinsiplariga e’tibor berildi.
Hal qilingan konkret masalalar guruhiga quyidagilar kiradi:
- funksiya grafigini chizish jarayonini vizuallashtirish;
- matritsalar ustida amallar bajarishni vizuallashtirish;
- algebraik tenglamalarni yechish bosqichlarini namoyish etish;
- chiziqli tenglamalar sistemasini hal etish qadamlarini vizuallashtirish.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_55.png)
![Natijada dasturiy ta’minot yaratilib, uning ishlash bosqichlari namoyish
etildi.
Taklif qilingan usullar va texnologik yechimlarni ixtiyoriy sohadagi
masalalarni yechishda foydalanuvchi interfeysini qulay turlarini yaratish va
masalalarni yechish jarayonlarini vizuallashtirish uchun qo’llash maqsadga
muvofiqdir.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_56.png)
![Foydalanilgan a dabiyotlar
1. Агабеков Л. Е., Иванова Г. С. Программирование на C++. Ч. 2.
Средства объектно-ориентированного программирования: Учеб. пособие. -
М.: Изд-во МГТУ им. Баумана, 1996.
2. Агабеков Л. К., Иванова Г. С. Программирование на C++. Ч. 1.
Средства процедурного программирования: Учеб. пособие. - М.: Изд-во
МГТУ им. Баумана, 1999.
3. Иванова Г.С . Основы программирования . Учебник для вузов. М.:
Изд-во МТТУ им. Н.Э.Баумана, 2001.
4. Иванова Г.С . Технология программирования. М.: Изд-во МТТУ им.
Н.Э.Баумана, 2002.
5. Кватрани Т . Rational Rose 2000 и UML . Визуальное
моделированиеп. М.ДМК Пресс, 2001.
6. Липаев В.В . Надежность программных средств. М.: «Синтег»,1998.
7. Мандел Т . Разработка пользовательского интерфейса . М .: ДМК
Пресс , 2001.
8. Новоженов Ю.В. Объектно-ориентированные технологии
разработки сложных программных систем. - М.: ДМК Пресс, 1996.
9. Овчинников В.А. Алгоритмизация комбинаторно-оптимизационных
задач при проектировании ЭВМ или систем: Учеб. для вузов. - М.: Изд-во
МГТУ им. Баумана, 2001.
10. Программные системы / Бахманн П., Френцель М., Ханцшманн К.
и др. — М.: Мир, 1988.
11. Тассел Д. Ван. Стиль, разработка, эффективность, отладка и
испытание программ. - М.: Мир,1985.
12. Тейер Т., Липов М., Нельсон Э. Надежность программного
обеспечения. - М.: Мир, 1981.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_57.png)
![Ilova
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms,
Dialogs, ImgList, ComCtrls, ToolWin, Menus, OleCtnrs,
ExtCtrls, jpeg,
StdCtrls, Grids, Buttons, Spin;
type
mas=array [1..100,1..100] of real;
TForm1 = class(TForm)
MainMenu1: TMainMenu;
Fayl1: TMenuItem;
Hisoblash1: TMenuItem;
Yordam1: TMenuItem;
ToolBar1: TToolBar;
ImageList1: TImageList;
Panel1: TPanel;
Notebook1: TNotebook;
Image1: TImage;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
GroupBox2: TGroupBox;
Label3: TLabel;
Label4: TLabel;
Edit3: TEdit;
Edit4: TEdit;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
Stg1: TStringGrid;
Stg2: TStringGrid;
GroupBox3: TGroupBox;
Label5: TLabel;
BitBtn5: TBitBtn;
ComboBox1: TComboBox;
Edit5: TEdit;
Dasturhaqida1: TMenuItem;
Matritsalarustidaamallar1: TMenuItem;
StatusBar1: TStatusBar;
Image2: TImage;
GroupBox4: TGroupBox;
GroupBox5: TGroupBox;
GroupBox6: TGroupBox;
Label6: TLabel;](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_58.png)
![le1: TLabeledEdit;
le2: TLabeledEdit;
le3: TLabeledEdit;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
le4: TLabeledEdit;
le5: TLabeledEdit;
le6: TLabeledEdit;
le7: TLabeledEdit;
le8: TLabeledEdit;
Label7: TLabel;
le9: TLabeledEdit;
BitBtn8: TBitBtn;
BitBtn9: TBitBtn;
le10: TLabeledEdit;
le11: TLabeledEdit;
le12: TLabeledEdit;
Label8: TLabel;
le13: TLabeledEdit;
le14: TLabeledEdit;
le15: TLabeledEdit;
le16: TLabeledEdit;
le17: TLabeledEdit;
BitBtn10: TBitBtn;
BitBtn11: TBitBtn;
le18: TLabeledEdit;
le19: TLabeledEdit;
le20: TLabeledEdit;
le21: TLabeledEdit;
GroupBox7: TGroupBox;
Image3: TImage;
labe1: TLabeledEdit;
BitBtn12: TBitBtn;
stg4: TStringGrid;
stg5: TStringGrid;
BitBtn13: TBitBtn;
BitBtn14: TBitBtn;
BitBtn15: TBitBtn;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
Image4: TImage;
Label9: TLabel;
GroupBox8: TGroupBox;
Label10: TLabel;
SpinEdit1: TSpinEdit;
SpinEdit2: TSpinEdit;
Label11: TLabel;
Label12: TLabel;
SpinEdit3: TSpinEdit;
GroupBox10: TGroupBox;](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_59.png)
![ComboBox2: TComboBox;
BitBtn16: TBitBtn;
SpeedButton4: TSpeedButton;
RadioGroup1: TRadioGroup;
procedure FormActivate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
procedure BitBtn11Click(Sender: TObject);
procedure BitBtn12Click(Sender: TObject);
procedure BitBtn13Click(Sender: TObject);
procedure stg4KeyPress(Sender: TObject; var Key: Char);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure BitBtn16Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
a,b,d:mas;
i,j,m1,n1,m2,n2,ax,ay,k,n:integer;
p,tmp,del:real;
a1,a2,a3,a4,y:real;
implementation
uses Unit2;
function kvadrat(a,b,c,x:real):real;
begin
y:=a*x*x+b*x+c;
end;
function sinus(a,b,c,x:real):real;
begin
y:=a*sin(b*x)+c;
end;
function kubik(a,b,c,x:real):real;
begin
y:=x*x*x*A+b+c;
end;
{$R *.dfm}
procedure TForm1.FormActivate(Sender: TObject);
var m,kw,kh,i,k:integer;
s:string[2];](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_60.png)
![begin
//Graf oynasi
notebook1.ActivePage:='asosiy';
m:=25;
kw:=image4.Width div m;
kh:=image4.Height div m;
{---- ???????? ?????---------}
with image4.Canvas do
for i:=1 to kh do begin
MoveTo(m,m*i);
LineTo(image4.Width -m,m*i);
end;
{---- ???????? ????? ?????-----}
{---- ?????????? ?????---------}
with image4.Canvas do
for i:=1 to kw do begin
MoveTo(m*i,m);
LineTo(m*i,image4.Height -m);
end;
{---- ?????????? ????? ?????-----}
with image4.Canvas do
begin
Font.Size := 12;
Font.Color :=clred;
for i:=1 to kw div 2 do
begin
TextOut(50*i-2,image4.Height div 2-10,'|');
end;
Font.Size := 12;
Font.Color :=clred;
for i:=1 to kh div 2 do
TextOut(image4.Width div 2-10,50*i-10,'----');
k:=-4;
for i:=1 to kw div 2 -1 do
begin
s:=IntToStr(k);
TextOut(50*i-15,image4.Height div 2+5,s);
k:=k+1;
end;
k:=-3;
for i:=1 to kh div 2 -1 do
begin
s:=IntToStr(k);
if k<> 0 then TextOut(image4.Width div 2-
15,50*i+2,s);
k:=k+1;
end;
end;
with image4.Canvas do](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_61.png)
![begin
pen.color:=clred;
pen.Width :=2;
MoveTo(20, image4.Height div 2);
LineTo(image4.Width -20, image4.Height div 2 );
MoveTo(image4.Width div 2, 20);
LineTo(image4.Width div 2, image4.Height -20 );
end;
end;
///////////////////////////////////
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if edit1.Text<>'' then
if edit2.Text<>'' then
begin
m1:=strtoint(edit1.Text);
n1:=strtoint(edit2.Text);
stg1.RowCount:=strtoint(edit1.Text);
stg1.ColCount:=strtoint(edit2.Text);
end;
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
if edit3.Text<>'' then
if edit4.Text<>'' then
begin
m2:=strtoint(edit3.Text);
n2:=strtoint(edit4.Text);
stg2.RowCount:=strtoint(edit3.Text);
stg2.ColCount:=strtoint(edit4.Text);
end;
end;
procedure TForm1.BitBtn5Click(Sender: TObject);
begin
for i:=1 to m1 do
for j:=1 to n1 do a[i,j]:=strtofloat(stg1.cells[j-1,i-1]);
for i:=1 to m2 do
for j:=1 to n2 do b[i,j]:=strtofloat(stg2.cells[j-1,i-1]);
case combobox1.ItemIndex of
0: begin //matritsalarni qo'shish
if (m1=m2) and (n1=n2) then
for i:=1 to m1 do](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_62.png)
![for j:=1 to n1 do D[i,j]:=A[i,j]+B[i,j];
ax:=m1; ay:=n1;
form2.ShowModal;
end;
1: begin //A-B matritsa
if (m1=m2) and (n1=n2) then
for i:=1 to m1 do
for j:=1 to n1 do D[i,j]:=A[i,j]-B[i,j];
ax:=m1; ay:=n1;
form2.ShowModal;
end;
2: begin //B-A matritsa
if (m1=m2) and (n1=n2) then
for i:=1 to m1 do
for j:=1 to n1 do D[i,j]:=B[i,j]-A[i,j];
ax:=m1; ay:=n1;
form2.ShowModal;
end;
3: begin //A*B matritsa
if n1=m2 then
for i:=1 to m1 do
for j:=1 to n1 do
begin
D[i,j]:=0;
for k:=1 to n1 do
D[i,j]:=D[i,j]+A[i,k]*B[k,j];
end;
ax:=m1; ay:=n1;
form2.ShowModal;
end;
4: begin
if n2=m1 then
for i:=1 to m2 do
for j:=1 to n2 do
begin
D[i,j]:=0;
for k:=1 to n2 do
D[i,j]:=D[i,j]+B[i,k]*A[k,j];
end;
ax:=m2; ay:=n2;
form2.ShowModal;
end;
5: begin
for i:=1 to m1 do
for j:=1 to n1 do
stg1.cells[j-1,i-
1]:=floattostr(strtofloat(edit5.Text)*a[i,j]);
end;
6: begin
for i:=1 to m2 do](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_63.png)
![for j:=1 to n2 do
stg1.cells[j-1,i-
1]:=floattostr(strtofloat(edit5.Text)*b[i,j]);
end;
7: begin del:=1;
for k:=1 to m1-1 do
for i:=k+1 to m1 do
begin tmp:=a[i,k];
if tmp <>0 then
begin
for j:=k to m1 do
a[i,j]:=a[i,j]*a[k,k]/tmp-a[k,j];
del:=del*tmp/a[k,k];
end;
end;
p:=1;
for i:=1 to m1 do p:=p*a[i,i];
showmessage('A matritsa determinanti =
'+floattostr(del*p));
end;
8: begin del:=1;
for k:=1 to m2-1 do
for i:=k+1 to m2 do
begin tmp:=b[i,k];
if tmp <>0 then
begin
for j:=k to m2 do
b[i,j]:=b[i,j]*b[k,k]/tmp-b[k,j];
del:=del*tmp/b[k,k];
end;
end;
p:=1;
for i:=1 to m1 do p:=p*b[i,i];
showmessage('A matritsa determinanti =
'+floattostr(del*p));
end;
9: begin
for i:=1 to m1 do
for j:=1 to n1 do stg1.Cells[i-1,j-1]:=floattostr(a[i,j]);
end;
10: begin
for i:=1 to m2 do
for j:=1 to n2 do stg1.Cells[i-1,j-1]:=floattostr(b[i,j]);
end;
11: begin end;
12: begin end;
end;
end;
procedure TForm1.BitBtn6Click(Sender: TObject);
var a,b,c,x1,x2,d:real;](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_64.png)
![begin
a:=strtofloat(le1.Text);
b:=strtofloat(le2.Text);
c:=strtofloat(le3.Text);
d:=b*b-4*a*c;
if d>=0 then begin
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
le4.Text:=floattostr(x1);
le5.Text:=floattostr(x2);
end else
showmessage('Tenglama haqiqiy ildizga ega emas');
end;
procedure TForm1.BitBtn7Click(Sender: TObject);
begin
le1.Clear;
le2.Clear;
le3.Clear;
le4.Clear;
le5.Clear;
end;
Function F(x1:real): real;
Begin
F:=sqr(sqr(x1))+a1*sqr(x1)*x1+a2*sqr(x1)+a3*x1+a4;
end;
procedure TForm1.BitBtn10Click(Sender: TObject);
var eps:real;
a,x: array [0..100] of real;
i,j,n:integer;
begin
n:=4; Eps:=0.001;
a1:=strtofloat(le14.Text); a2:=strtofloat(le15.Text);
a3:=strtofloat(le16.Text); a4:=strtofloat(le17.Text);
a[1]:=-4; a[2]:=-2; a[3]:=-1; a[4]:=0; a[5]:=5;
For j:=1 to n do BEGIN
if F(a[j])<0 then Begin
x[0]:=a[j]; i:=0;
Repeat
x[i+1]:=x[i]-(F(x[i])/(F(a[j+1])-
F(x[i])))*(a[j+1]-x[i]);
i:=i+1;
until Abs(x[i]-x[i-1])>Eps; End
else Begin](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_65.png)
![x[0]:=a[j+1]; i:=0;
Repeat
x[i+1]:=x[i]-(F(x[i])/(F(x[i])-F(a[j])))*(x[i]-
a[j]);
i:=i+1;
until Abs(x[i]-x[i-1])>Eps; End;
case j of
1: le18.Text:=floattostr(x[i]);
2: le19.Text:=floattostr(x[i]);
3: le20.Text:=floattostr(x[i]);
4: le21.Text:=floattostr(x[i]);
end;
end;
end;
procedure TForm1.BitBtn8Click(Sender: TObject);
var eps:real;
a,x: array [0..100] of real;
i,j,n:integer;
begin
n:=3; Eps:=0.001;
a1:=strtofloat(le6.Text); a2:=strtofloat(le7.Text);
a3:=strtofloat(le8.Text); a4:=strtofloat(le9.Text);
a[1]:=-4; a[2]:=-2; a[3]:=-1; a[4]:=0;
For j:=1 to n do BEGIN
if F(a[j])<0 then Begin
x[0]:=a[j]; i:=0;
Repeat
x[i+1]:=x[i]-(F(x[i])/(F(a[j+1])-
F(x[i])))*(a[j+1]-x[i]);
i:=i+1;
until Abs(x[i]-x[i-1])>Eps; End
else Begin
x[0]:=a[j+1]; i:=0;
Repeat
x[i+1]:=x[i]-(F(x[i])/(F(x[i])-F(a[j])))*(x[i]-
a[j]);
i:=i+1;
until Abs(x[i]-x[i-1])>Eps; End;
case j of
1: le10.Text:=floattostr(x[i]);
2: le11.Text:=floattostr(x[i]);
3: le12.Text:=floattostr(x[i]);
end;
end;
end;](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_66.png)
![procedure TForm1.BitBtn9Click(Sender: TObject);
begin
le6.Clear;
le7.Clear;
le8.Clear;
le9.Clear;
le10.Clear;
le11.Clear;
le12.Clear;
end;
procedure TForm1.BitBtn11Click(Sender: TObject);
begin
le13.Clear;
le14.Clear;
le15.Clear;
le16.Clear;
le17.Clear;
le18.Clear;
le19.Clear;
le20.Clear;
le21.Clear;
end;
procedure TForm1.BitBtn12Click(Sender: TObject);
begin
n:=strtoint(labe1.Text);
stg4.ColCount:=n+2;
stg4.RowCount:=n+1;
for i:=1 to n do begin
stg4.Cells[i,0]:='k'+inttostr(i);
stg4.Cells[0,i]:=inttostr(i);
end;
stg4.Cells[n+1,0]:='Bn';
end;
procedure TForm1.BitBtn13Click(Sender: TObject);
var mm,m1,i1,m : integer;
tr,tp,x : real;
bb:mas;
begin
for i:=1 to n do
for j:=1 to n+1 do
bb[i,j]:=strtofloat(stg4.cells[j,i]);
m:=n;
mm:=m-1; m1:=m+1;](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_67.png)
![for i:=1 to mm do
begin
j:=i; x:=bb[i,i];
for k:=i+1 to m do
begin
if (abs(x)<abs(bb[k,i])) then begin
x:=bb[k,i]; j:=k; end;
end;
for k:=1 to m1 do
begin
x:=bb[i,k]; bb[i,k]:=bb[j,k]; bb[j,k]:=x;
end;
tr:=bb[i,i];
for k:=i to m1 do bb[i,k]:=bb[i,k]/tr;
tp:=1.0;
for k:=i+1 to m do
Begin
if (bb[k,i]<>0) then
begin
tp:=bb[k,i];
for i1:=i to m1 do bb[k,i1]:=bb[k,i1]/tp-
bb[i,i1];
end;
end;
end;
bb[m,m1]:=bb[m,m1]/bb[m,m];
for i:=1 to mm do
begin
j:=m-i; k:=j+1;
for i1:=k to m do bb[j,m1]:=bb[j,m1]-
bb[i1,m1]*bb[j,i1];
end;
stg5.RowCount:=n;
for i:=1 to n do
begin stg5.Cells[0,i-1]:='X'+inttostr(i);
stg5.Cells[1,i-1]:=floattostr(bb[i,n+1]);
end
end;
procedure TForm1.stg4KeyPress(Sender: TObject; var Key: Char);
begin
case key of
#8,'0'..'9':;
#13: if stg4.Col<stg4.ColCount-1
then stg4.Col:=stg4.Col+1;
'.',',': begin](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_68.png)
![if key<>decimalseparator then
key:=decimalseparator;
if
pos(stg4.Cells[stg4.Col,stg4.row],decimalseparator)<>0
then key:=chr(0);
end;
'-': if length(stg4.Cells[stg4.Col,stg4.row])<>0
then key:=chr(0);
else key:=chr(0);
end;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
notebook1.ActivePage:='matritsa';
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
notebook1.ActivePage:='kvadrat';
end;
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
notebook1.ActivePage:='teng_sys';
end;
procedure TForm1.SpeedButton4Click(Sender: TObject);
begin
notebook1.ActivePage:='asosiy';
end;
procedure TForm1.BitBtn16Click(Sender: TObject);
var x0,y0,m:integer;
x:real;
a,b,c,d:integer;
begin
case radiogroup1.ItemIndex of
0: d:=1;
1: d:=5;
2: d:=10;
end;
a:=spinedit1.Value;
b:=spinedit2.Value;
c:=spinedit3.Value;
x0:=image4.Width div 2;
y0:=image4.Height div 2;
m:=25;
x:=-3;
with image4.Canvas do](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_69.png)
![begin
pen.Color:= clRed;
repeat
case combobox2.ItemIndex of
0:kvadrat(a,b,c,x);
1:sinus(a,b,c,x);
end;
Pixels [x0+trunc(x*m), y0-trunc(y*m)]:=clred;
x:=x+0.01 ;
Application.ProcessMessages;
sleep(d);
until (x>=3);
end;
end;
end.](/data/documents/e5f46d6a-114c-4e92-945d-6a175206f388/page_70.png)
FOYDALANUVCHI INTERFESINI YARATISHDA VEZUAL TEXNALOGIYALARDAN FOYDALANISH MUNDARIJA Kirish…………………………………………………………………………… 3 1 - §. Foydalanuvchi interfeysi haqida umumiy ma’lumotlar ............................... . 6 1.1. Foydalanuvchi interfeyslari turlari va ularni ishlab chiqish bosqichlari............................................................................................................ 6 1.2. Insonning axborotni idroki, xotiralashi va qayta ishlashi bilan bog’liq psixofizik xususiyatlari............................................................................ 13 1.3 . Interfeysining f oydalanuvchi va dasturiy modeli…………….......... 17 1.4 . Muloqotlarning turkumlanishi va ularni ishlab chiqishning umumiy tamoyillari ……………………………………………………………………… 21 2- §. Ilovalarda grafik interfeyslardan foydalanish……………………………... 28 2.1. Foydalanuvchining grafik interfeysining asosiy komponentalari....... 28 2.2. Grafik foydalanuvchi interfeyslarida muloqotlarni amalga oshirish.. 33 2.3. To’g’ridan – to’g’ri monipulyatsiyali foydalanuvchi interfeyslari va ularni loyihalash................................................................................................... 36 2.4. Foydalanuvchilar interfeyslarining inte le ktual elementlari ……........ 42 3-§. Delphi muhitida ilovalar yaratish va unda qulay interfeysni tashkillashtirish.............................................................................................. 46 3.1. Delphi muhiti va foydalanuvchi bilan muloqotni tashkillashtirishda qo’llaniladigan komponentlar………………………………………………….. 46 3.2. Delphi muhitida grafik interfeysni tashkil qilish va undan foydanish 49 Xulosa………………………………………………………………………….. 56 Ilovalar…………………………………………………………………………. 57 Foydalanilgan adabiyotlar……………………………………………………… 58
Kirish Hisoblash texnikasi rivojlanishining oldingi bosqichlarida foydalanuvchi interfeysi operatsion tizim bilan insonning muloqot vositasi sifatida qaralgan va ular yetarlicha dastlabkisi hisoblanadi. U asosan buyruqni bajarish, yuklash, ular bilan aniq ma’lumotlarni bog’lash va hisoblash texnikasi o’rnatishlarga xizmat qiladigan qandaydir protseduralarni bajarish imkonini bergan. Texnik vositalarning mukammallashuvi asosida maxsus foydalanuvchi interfeysiga ega interaktiv dasturiy ta’minot yaratish imkoniyati paydo bo’ldi [4]. Hozirgi vaqtda asosiy muammolardan biri murakkab dasturiy maxsulotlarga professional bo’lmagan foydalanuvchilar ishlatishiga mo’ljallangan interaktiv interfeyslarni ishlab chiqish hisoblanadi. Oxirgi yillarda foydalanuvchining bunday interfeyslarini yaratish bo’yicha asosiy konsepsiyalar shakllandi va ularni yaratish metodikalarining bir nechtasi taklif etildi. Mavzuning dolzarbligi . Hozirgi asr inson faoliyatining barcha sohalarini avtomatlashtirish asridir. Shuning uchun ham zamonaviy axborot texnologiyalariga va avtomatlashtirishning asosini tashkil etadigan yuqori sifatli dasturiy mahsulotlar yaratishga katta e’tibor berilmoqda. Dunyodagi ko’pgina yetakchi davlatlarning tajribalari shuni ko’rsatmoqdaki, dasturiy mahsulot yaratishdagi arzimagan xatoliklar ham oxir oqibatda ishlab chiqarishdagi uzilishlarga va boshqa kutilmagan vaziyatlarga olib kelishi mumkin. Shuning uchun ham dasturiy mahsulotlar yaratish, ularni sozlash, masalaning barcha holatlarini o’z ichiga olgan test masalalar yaratish va ular uchun yaratilgan dasturiy mahsulotlarning ishonchliligini tekshirish ishlab chiqarish jarayonlarini avtomatlashtirishda, qaralayotgan fizik jarayonlarning xususiyatlarini to’liq ochishda ishlab chiqaruvchi va foydalanuvchiga yaratilgan qulayliklari hisobiga katta iqtisodiy foyda keltirishi mumkin. Masalaning qo’yilishi. Ushbu bitiruv malakaviy ishida foydalanuvchi uchun mo’ljallangan grafik interfeys elementlar, qulayliklarni zamonaviy
programmalash texnologiyasi asosida tashkillashtirish masalasi muhokama qilinadi. Interfeysning elementlarini(forma, boshqaruv elementlar va h.k) tashkil etishning texnologik jarayoni namoyish etiladi. Aniq masalalarni yechish jarayonida interfeysni tashkillashtirish bosqichlari dasturiy hal etiladi. Ish natijalarini dasturiy tizimlarini loyihalash va o’qitishda qo’llash mumkin. Ishning maqsadi. Ushbu bitiruv malakaviy ishida foydalanuvchi uchun mo’ljallangan grafik interfeys elementlar, qulayliklarni zamonaviy programmalash texnologiyasi asosida tashkillashtirish masalasi muhokama qilinadi. Interfeysning elementlari(forma, boshqaruv elementlar va h.k) ni tashkil etishning texnologik jarayoni namoyish etiladi. Aniq masalalarni yechish jarayonida interfeysni tashkillashtirish bosqichlari dasturiy hal etiladi. Ishning vazifalari. Bitiruv malakviy ishda quyidagi vazifalar hal etilgan: -dasturiy maxsulotlarga professional bo’lmagan foydalanuvchilar ishlatishiga mo’ljallangan interaktiv interfeyslarni ishlab chiqish; -foydalanuvchi interfeyslarini yaratishning asosiy konsepsiyalari va ularni yaratish metodikalarini o’rganish; -foydalanuvchi interfeyslarining turlari va ularni ishlab chiqish bosqichlari tadqiq qilish; - interfeysni loyihalashda inson psixofiziologik xususiyatlarini hisobga olish prinsiplariga e’tibor qilish. -dasturiy vositani yaratish. Ishning ilmiy va amaliy ahamiyati. Mazkur ish foydalanuvchi grafik interfeysini ishlab chiqish va amaliy dasturiy ta’minotini yaratish nuqtai nazaridan amaliy va tеxnologik ahamiyatga ega. Unda dasturlashning vizual muhitlari va qulayliklaridan foydalanib foydalanuvchining grafik interfeysli ilovalar yaratish usul va mеxanizmlari yoritilgan. Shuningdеk, ishni o’quv-uslubiy ahamiyatli jihatlari ham mavjud bo’lib, undan Windows uchun ilovalar yaratishda uslubiy ko’rsatma sifatida ham foydalanish mumkin.
Qo’llanilgan mеtod va tеxnologiyalar. Ishni bajarish jarayonida foydalanuvchi interfeysini tashkil qilish usullari, bunda ranglarni to’g’ri tanlash, forma elementlarini joylashtirish, menyularni shakllantirish prinsiplariga rioya qilish, amaliy dasturlar bilan ishlash va yuqori darajali tillarda dasturlash xususiyatlarini e’tibor olindi va foydalanildi. Bitiruv malakaviy ish uchta paragraf, xulosa, adabiyotlar ro’yxati va ilovalardan tuzilgan. Birinchi paragrafda foydalanuvchi interfeyslari turlari va ularni ishlab chiqish bosqichlari, insonning axborotni idrok etishi, xotiralashi va qayta ishlashi bilan bog’liq psixofizik xususiyatlari, interfeysining f oydalanuvchi va dasturiy modeli, m uloqotlarning turkumlanishi va ularni ishlab chiqishning umumiy tamoyillari to’g’risida tushunchalar kеltirilgan. Ikkinchi paragrafda foydalanuvchining grafik interfeysining asosiy komponentalari, grafik foydalanuvchi interfeyslarida muloqotlarni amalga oshirish, to’g’ridan – to’g’ri monipulyatsiyali foydalanuvchi interfeyslari va ularni loyihalash, foydalanuvchilar interfeyslarining intelektual elementlarini yaratish muhokama qilingan. Uchinchi paragrafda d elphi muhiti va foydalanuvchi bilan muloqotni tashkillashtirishda qo’llaniladigan komponentlar, d elphi muhitida grafik interfeysni tashkil qilish va undan foydanish dastur ilovasi va interfeysi yaratilgan. Xulosada asosiy natijalar, adabiyotlar ro’yhatida ishlatilgan asosiy adabiyotlar va manbalar, oxiri ilovada esa ishlab chiqilgan dasturning matnlari kеltirilgan.
1-§. Foydalanuvchi interfeysi haqida umumiy ma’lumotlar 1.1. Foydalanuvchi interfeyslari turlari va ularni ishlab chiqish bosqichlari Foydalanuvchi interfeysi- kompyuter bilan foydalanuvchining o’zaro hamkorlikini ta’minlovchi dasturiy va apparat vositalar majmuasidan iborat. Bunday o’zaro hamkorlikning asosini muloqot tashkil etadi. Ushbu holda muloqat vaqtning real masshtabida amalga oshiriladigan va aniq masalani birgalikda yechishga yo’naltirilgan inson hamda kompyuter o’rtasida axborotlarni belgilangan tartibda almashish: axborotlar almashinish va harakatlarni o’zaro muvofiqlashtirish tushuniladi[35]. Har bir muloqot foydalanvchi va kompyuter aloqasini fizik ta’minlaydigan alohida kiritish–chiqarish jarayonlaridan iborat [1- 3]. Axborotlarni almashinish – xabarlarni uzatish va signallarni boshqarish orqali amalga oshiriladi. Xabar – muloqotda axborotlarni almashinishda ishtirok etadigan axborotning bir bo’lagi. Xabarlar quyidagi turlarga ajratiladi: – kiritish xabarlari, bu kiritish vositalari: klaviatura, sichqoncha va h.k yordamida inson tomonidan amalga oshiriladi. – chiqish xabarlari, bu matn, ovozli signallar yoki tasvirlar ko’rinishda kompyuter tomonidan beriladi, foydalanuvchiga monitor ekraniga yoki axborotlarni chop etish va boshqa qurilmalariga chiqariladi(1.1-rasm). Foydalanuvchi Terminal Kompyuter Ovoz va chiquvchi rasm xabarlar Blokirovka Harakat Kiruvchi xabarlar 1.1-rasm. Foydalanuvchi va kompyuter o’rtasidagi muloqotni tashkil qilish Foydalanuvchi asosan quyidagi turdagi xabarlarni amalga oshiradi, axborot so’rovi, yordam so’rovi, amal yoki funksiya so’rovi, axborotlarni kiritish yoki Bajarilgan xabar Ishlov berish So’rovlar tahlili“ Eho” chiqishi Ekran Klaviatura va sichqonchaXabarlar tahlili Qabul qilingan qaror So’rovlar amalga oshishi