logo

Ingliz tilida gapirishni rivojlantirish ilovasi –foydalanuvchilarning ingliz tilidagi muloqotini yaxshilash uchun xizmat qiladigan,shuningdek IELTS imtihoniga tayyor bo’lishda

Yuklangan vaqt:

12.08.2023

Ko'chirishlar soni:

0

Hajmi:

331.8701171875 KB
Ingliz   tilida   gapirishni   rivojlantirish   ilovasi  – foydalanuvchilarning   ingliz
tilidagi   muloqotini   yaxshilash   uchun   xizmat   qiladigan , shuningdek    IELTS
imtihoniga   tayyor   bo ’ lishda   ko ’ maklashadigan   ilovani   loyihalash   va   ishlab
chiqish
Reja:
Kirish
Nazariy qism:
1.1. Mobile ilovalar va ularning asosiy tushunchalari
1.2. Mobile ilovalar yaratish
Asosiy qism:
2.1. “ IELTS_Speaking”  dasturini mantiqiy strukturasi va uni shakllantirish
2.2. Ilova foydalanuvchi interfeysini yaratish
2.3. Ilova funksionaligini taminlash 
2.4. Dasturni qurish va apk fayl tayyorlash
Xulosa
Foydanaligan adabiyotlar                                                        Kirish
Mobil ilovalar, mobil qurilmalar uchun yaratilgan dasturlar hisoblanadi. Bu
ilovalar,   odatda   mobil   qurilmalarda   ishga   tushiriladigan   boshqa   ilovalardan   farqli
o'laroq,   o'rnatilgan   mobil   qurilmani   yaxshiroq   qo'llashga   yordam   beradi.   Mobil
ilovalar,   Android   va   iOS   (Apple)   platformalariga   mo'ljallangan   o'ziga   xos
dasturlash tilida yoziladi.
                     Mobil ilovalarning asosiy tushunchalari quyidagilardir:
1. Mobil ilova tashqi interfeysi (UI): Mobil ilovalar o'zining tashqi interfeysi orqali
foydalanuvchilar   bilan   muloqotda   bo'ladi.   Bu   interfeys,   tugma,   ikon,   menyu   va
boshqa   interaktiv   elementlarni   o'z   ichiga   oladi.   Mobil   ilovalar,   intuitiv,   qulay   va
ishlashga mo'ljallangan interfeyslarga ega bo'lishi kerak.
2. Mobil ilova asosiy funksiyalari: Mobil ilovalarning asosiy funksiyalari, qurilma
tomonidan   taqdim   etilgan   imkoniyatlardan   foydalanish   orqali   bajariladi.   Misol
uchun,   telefon   qo'llanilgan   ilovada   qo'ng'iroq   qilish,   habar   yuborish,   rasmlarni
olish, matn yozish va boshqalar kabi funktsiyalar bo'lishi mumkin.
3.   Mobil   ilova   ma'lumotlar   bazasi:   Ko'plab   mobil   ilovalar,   ma'lumotlarni   saqlash
uchun ma'lumotlar bazasidan foydalanadi. Bu ma'lumotlar bazasi, ilovaga tegishli
ma'lumotlarni   saqlab   qo'yish,   o'qish   va   o'zgartirishga   imkon   beradi.   Bu,   ilova
ma'lumotlarini doimiy saqlab turishni ta'minlayadi va foydalanuvchilar va ilovaga
xizmat ko'rsatuvchilar orasidagi ma'lumot almashishini mumkin qilar.
4. Mobil ilova to'plamlari: Mobil ilovalar, asosan bir nechta fungsional to'plamlar
yig'indisi   sifatida   yaratiladi.   Bu   to'plamlar,   bir   xil   maqsad   uchun   yaxshi
integratsiya   qilgan   va   bir-biri   bilan   aloqador   bo'lgan   ilova   o'rikalaridan   iborat
bo'lishi   mumkin.   Masalan,   xarita   ilovasi   to'plami,   o'qish-to'qish   ilovasi   to'plami
yoki ijtimoiy tarmoq bilan bog'liq ilovalar to'plami kabi.
5.   Mobil   ilova   yo'nalishi:   Mobil   ilovalar,   turli   sohalarga   yo'naltirilgan   bo'lishi
mumkin.   Bu   sohalar,   biznes   ilovalari,   ijtimoiy   tarmoq   ilovalari,   o'yinlar, ma'lumotlar   analizi   ilovalari,   xarita   va   navigatsiya   ilovalari,   e-tijorat   ilovalari   va
boshqalar kabi bo'lishi mumkin.
Mobil   ilovalar   o'zgaruvchan   va   rivojlanadigan   sohalar   hisoblanadi.   Yangi
texnologiyalar   va   talablar   bilan   o'zgarishlarga   vaqt   o'tganda,   mobil   ilovalar   ham
davom etib borayotgan rivojlanishini kutib olish mumkin.
 
                                                   
                                               NAZARIY QISM 1.1. Mobile ilovalar va ularning asosiy tushunchalari
Mobil ilova (inglizcha: Mobile app) — ma lum bir platforma (iOS, Android,ʼ
Windows   Phone   va  boshqalar)   uchun   ishlab   chiqilgan   smartfonlar,  planshetlar   va
boshqa mobil qurilmalarda ishlashga mo ljallangan dastur. Ko pgina mobil ilovalar	
ʻ ʻ
qurilmaning   o zida   oldindan   o rnatiladi   yoki   ularni  App   Store,   Google   Play   va	
ʻ ʻ
boshqalar   kabi   onlayn   dastur   do konlaridan   bepul   yoki   pullik   yuklab   olish	
ʻ
mumkin.Dastlab,   mobil   ilovalar   elektron   pochtani   tezda   tekshirish   uchun
ishlatilgan,   ammo   ularning   yuqori   talablari   boshqa   sohalarda   ham   kengayishiga
olib keldi, masalan, mobil telefon va GPS o yinlari, suhbatlashish, video tomosha	
ʻ
qilish   va   Internetdan   foydalanish.   Ushbu   atama   2007-yildan   beri   juda   mashhur
bo lib, 2010-yilda Amerika Dialektik Jamiyati tomonidan „Yil so zlari“ ro yxatiga	
ʻ ʻ ʻ
kiritilgan.Mobil  ilovalar  bozori bugungi kunda juda rivojlangan va barqaror o sib	
ʻ
bormoqda.   Statista   prognozlariga   ko ra,   2020-yilda   mobil   ilovalar   sanoatining	
ʻ
yillik   yalpi   daromadi   $189   milliarddan   oshadi.Mobil   ilovalar   -   smartfon   va
planshetlar   kabi   mobil   qurilmalar   uchun   ishlab   chiqilgan   dasturiy   ta'minot.   Ular
mobil qurilmalarni funktsiyali va qiziqarli miniatyura kuchlariga aylantiradi. Ba'zi
qurilmalar   ishlab   chiqaruvchilarining   ayrim   uyali   ilovalari   yoki   ular   bilan
bog'langan   uyali   aloqa   provayderlari     bilan   oldindan   o'rnatilgan   bo'ladi,   lekin
ko'plab ilovalar qurilmaga xos ilova orqali mavjud do'konlar.
Ushbu   ilovalarning   maqsadlari   o'yin-kulgidan,   mahsuldorlikdan   va   o'yin-
kulgidan   o'yin-kulgi,   sport,   fitnes   va   boshqa   har   qanday   odamni   tasavvur   qilish
uchun   gamutni   boshqaradi.   Ijtimoiy   media   -   mobil   ilovalarni   ishlab   chiqish   va
qabul   qilishning   eng   mashhur   yo'nalishlaridan   biri.   Aslida,   Facebook   barcha
platformalarda 2017-yilda eng keng tarqalgan dastur  hisoblanadi.Ko'pgina onlayn
ob'ektlar   mobil   veb-saytlar   va   mobil   ilovalarga   ega.   Umuman   olganda,   farq   bir
maqsadga   qaratilgan:  App   odatda   mobil   veb-saytga   qaraganda   kichikroq   bo'ladi,
ko'proq   interaktivlik   taklif   qiladi   va   mobil   qurilmada   ishlatish   oson   va   intuitiv
ravishda yanada aniqroq ma'lumotlarni taqdim etadi.
Mobil   ilovalar   turlari.   Smartfon   bozori   deyarli   bir   necha   o'n   yillar   oldin
o'sishni   boshlagan,   ammo   bu   uning   eng   yaxshi   daqiqasi   deb   ayta   olamiz.Ilovalar ularning   eng   muvaffaqiyatli   strategik   nuqtasi   edi   va   ular   tasniflana   boshlagan   va
turli   vazifalarni   hal   qilishga   moyil   bo'lganida,   ularning  tegishli   do'konlarida   yana
ko'plab   takliflar   paydo   bo'ldi.Biroq,   kompaniya   o'z   savdolarini   yoki   ular   orqali
mavqeini   oshirishga   qaror   qilishi   uchun   nima   ekanligini   bilish   muhimdir   Mobil
ilovalar   turlari   bozorda   mavjud,   shuningdek,   uning   asosiy   funktsiyalari   va
xususiyatlari   sizning   auditoriyangizga   va   potentsial   mijozlarga   eng   mos
keladiganini tanlash uchun. Agar dasturlash va uning rivojlanishini tashkil etuvchi
elementlar   haqida   gapiradigan   bo'lsak,   biz   guruhlashimiz   mumkin   Eng   ko'p
ishlatiladigan   mobil   ilovalarning   3   asosiy   turi.   Unga   berilgan   foydalanishga   va   u
amalga   oshiriladigan   qurilmalar   bilan   mosligiga   qarab,   ular   turli   holatlar   uchun
ishlatilishi mumkin.
  Mahalliy ilovalar.  Mahalliy mobil ilovalar ishlashi va ishlashi uchun har bir
operatsion tizimning eksklyuziv tilini talab qiladigan ilovalar sifatida tanilgan. Ular
ushbu maxsus qurilmalarning talablari asosida ishlab chiqilgan, shuning uchun ular
har   bir   tizimning   spetsifikatsiyalari   bo'yicha   alohida   ishlashi   kerak.Misol   uchun,
Android-da   ishlashi   uchun   iOS   uchun   mo'ljallangan   mahalliy   ilova   uchun   to'liq
noldan   va   Android   operatsion   tizimi   tilida   qo'shimchasini   yaratish   kerak,   ya'ni
operatsiyalarni   qo'llab-quvvatlashni   alohida   ajratish   kerak.Shu   ma'noda   iOS
ilovalari   Objective-C   tili   ostida   ishlab   chiqilgan   bo'lsa,   Android   esa   ushbu
operatsion   tizimni   ishlab   chiqish   vaqtida   foydalanilgan   Java   bilan   ishlaydi.  Agar
siz  boshqa  tizim  uchun  ilovani  loyihalashni  rejalashtirmoqchi   bo'lsangiz,  u  o'ziga
xos tilda bajarilishi kerak.
Afzalliklar.   Ushbu   ilovalarning   funktsiyalariga   ko'ra,   biz   kompaniyamiz
uchun   kerak   bo'lgan   yoki   nima   qilishni   xohlayotganimizni   tanlashda   hisobga
olinadigan   bir   qator   afzalliklarni   aniqlashimiz   mumkin.  Agar   dastur   iOS   uchun
ishlab   chiqilgan   bo'lsa,   u   turli   modellarda   mavjud   bo'lgan   barcha   funktsiyalarni
hisobga   oladi,   shunda   dastur   dasturiy   ta'minoti   o'zining   ishlashi   va   bajarilishida
ulardan   foydalanadi.   Bu   uni   tashkil   etuvchi   xususiyatlarni   sezilarli   darajada
kengaytiradi.Misol   uchun,   agar   telefonda   barmoq   izini   o'qish   qurilmasi   bo'lsa,
WhatsApp  kabi  mahalliy ilova o'z tizimini  buzg'unchilardan himoya qilish uchun ushbu   xususiyatdan   foydalanishi   mumkin.Ular   internetga   ulanmasdan   ishlashlari
mumkin.Bu   nuqta   mahalliy   ilovalar   o'rnatilishi   va   ishlashi   uchun   tizim
resurslaridan   foydalanishi   bilan   bog'liq.   Ko'pchilik   ma'lumotlarni   yuborish   va
qabul   qilish   uchun   internetga   ulanishi   kerak   bo'lsa-da,   ular   osongina   ochilishi   va
vositalarining aksariyati bilan ishlashi mumkin.
App   Store   yoki   Google   Play   faqat   o'zlarining   maxsus   operatsion   tizimlari
uchun   ishlab   chiqilgan   ilovalarni   o'z   do'konlarida   nashr   etadi.  Albatta,   siz   ba'zi
xavfsizlik   choralarini   ko'rishingiz   kerak   bo'lsa-da,   lekin   bu   marketingni   amalga
oshirishda   ijobiy   nuqta.Qurilmalar   takomillashgani   va   ularning   ishlab
chiqaruvchilari o‘z operatsion tizimlariga muntazam yangilanishlar chiqarayotgani
sababli,   ilovalar   ortda   qolishi   mumkin   emas.   Ilova   yangilanishlari   nafaqat
yaxshilanishlarni qo'shadi, balki xatolarni tuzatadi va kechikishlarni tuzatadi.
Kamchiliklari.   Mahalliy   ilovani   tanlashdan   oldin   bilishingiz   kerak   bo'lgan
ba'zi salbiy fikrlar ham mavjud:Ularni ishlab chiqish qimmatroq,Siz ularni doimiy
ravishda   yangilab   turishingiz   va   har   bir   tizimda   alohida   ishlashingiz   kerakligi
sababli, rivojlanishni  qo'llab-quvvatlash odatda yaratish uchun ko'proq moliyaviy,
insoniy   va   texnologik   resurslarni   talab   qiladi,Kodlarni   qayta   ishlatish   mumkin
emas,Bu operatsion tizimlarning turli tillari  bilan bog'liq. Shu sababli, iOS uchun
yaratilgan dastur hech qachon Androidda ishlamaydi va siz ushbu OT parametrlari
va talablariga rioya qilgan holda uni noldan qayta yaratishingiz kerak bo'ladi.
1.   Mobil   ilova   platformalari:   Mobil   ilovalar   Android   va   iOS   (Apple)
platformalariga   moslashtirilgan   holda   yaratiladi.   Android,   Google   tomonidan
ishlab chiqilgan va dunyoda eng keng tarqalgan mobil operatsion tizimdir. iOS esa
Apple   tomonidan   ishlab   chiqilgan   va   faqatgina  Apple   qurilmalari   (iPhone,   iPad)
uchun mo'ljallangan operatsion tizimdir.
2.   Mobil   ilovalar   uchun   dasturlash   tillari:   Android   ilovalarini   dasturlash
uchun   asosan   Java   va   Kotlin   tillari   ishlatiladi.   Java   o'zining   to'rtinchi   versiyasini
Android   ilovalarini   yaratish   uchun   ishlatish   mumkin.   Kotlin   esa   Android
ilovalarini   yaratish   uchun   yangi,   sodda   va   qulay   dasturlash   tili   sifatida   taklif qilinadi. iOS ilovalarini esa Apple tomonidan ishlab chiqilgan Swift dasturlash tili
bilan yaratish mumkin.
3.   Mobil   ilova   yaratish   vositalari:   Mobil   ilovalarni   yaratishda
foydalanuvchilar   uchun   turli   dasturlash   vositalari   mavjud.   Misol   uchun,  Android
Studio   Android   ilovalarini   yaratish   uchun   moslashuvchan,   kompleks   dasturlash
muhiti   hisoblanadi.   Xuddi   shunday,   Xcode   esa   iOS   ilovalarini   yaratish   uchun
moslashuvchan   dasturlash   muhiti   hisoblanadi.   Bu   vositalar   dasturlash   jarayonini
osonlashtirish va ilovalarni amalga oshirishda yordam beradi.
4. Mobil ilova ishlab chiqish jarayoni: Mobil ilova yaratish jarayoni odatda
quyidagi bosqichlardan iborat bo'ladi:
      -   Talablar   tahlili:   Ilovaning   maqsadi,   funktsiyalari   va   qo'llanuvchilarga
qanday   yordam   berishi   lozimligini   tushunish   uchun   talablar   tahlili   amalga
oshiriladi.
   - Dizayn va interfeys yaratish: Ilovaning dizayni va foydalanuvchilar bilan
tashqaridan ko'rinadigan tashqi interfeysi yaratiladi.
   - Dasturlash: Mobil ilova, tanlangan dasturlash tillari va muhiti yordamida
yaratiladi. Kerakli funktsiyalarni o'rnatish va ulardan foydalanish mumkin.
      -   Testlash   va   tanlash:   Ilova   yaratilganidan   so'ng,   uning   davom   etishini
ta'minlash   va   xato   va   muammo   larini   aniqlash   uchun   testlar   o'tkaziladi.   Testlash
natijalariga ko'ra ilova ustunliklari va kamchiliklari hisobga olinadi.
      -   E'lon   qilish   va   tarqatish:   Ilova   ilgari   tarqatiladi   va   foydalanuvchilar
uchun amalga oshirishga mo'ljallangan.
5.   Ilova   doirasidagi   xizmatlar:   Mobil   ilovalar   boshqarish   tizimlari,
ma'lumotlar   bazalari,   habarlar   yuborish   xizmatlari,   kartalar   va   navigatsiya
xizmatlari,   ma'lumot   analitikasi   va   boshqalar   kabi   qo'shimcha   xizmatlardan
foydalanishi   mumkin.   Bu   xizmatlar,   ilova   foydalanuvchilari   va   ilovaga   xizmat
ko'rsatuvchilari orasidagi ma'lumot almashishni va kommunikatsiyani ta'minlayadi. 1.2. Mobile ilovalar yaratish
Mobil ilova yaratish uchun bir nechta tillar va freymvorklar mavjud. Ulardan
ba'zilari quyidagilardir:
1.   Java:   Java   dasturlash   tili,  Android   ilovalarini   yaratish   uchun   o'rtacha   ravishda
ishlatiladi.   Bu   kuchli,   oson   o'rgatiladigan   va   keng   tarqalgan   dasturlash   tili
hisoblanadi. Java, Android SDK (Software Development Kit) bilan birga ishlatiladi
va Android Studio dasturlash muhitida ishlatiladi.
2. Kotlin: Kotlin, Android ilovalarini yaratish uchun yangi va qulay dasturlash tili
hisoblanadi. Kotlin, Java bilan to'liq muvofiq ishlash imkonini  beradi va Android
Studio   bilan   ham   integratsiya   qilinadi.   Kotlin,   oson   syntaksisiga   va   kamroq   kod
yozishga imkon berishi bilan mashhurdir.
3.   Swift:   Swift,   iOS   ilovalarini   yaratish   uchun  Apple   tomonidan   ishlab   chiqilgan
dasturlash tili  hisoblanadi. U shunchaki  sodda va oson syntaxga ega bo'lib, tezlik
va   xavfsizlikni   oshiradi.   Swift,   iOS   platformasidagi   ilovalarni   yaratishda   asosiy
dasturlash tili sifatida ishlatiladi.
4.   Objective-C:   Objective-C,   Swift   dan   oldingi   asosiy   iOS   dasturlash   tili   bo'lib,
iOS ilovalarini yaratishda hali  ham ishlatiladi. Objective-C, iOS SDK bilan birga
ishlatiladi   va  eski   ilovalarni   yangilash,   integratsiya   qilish   va   Swift   bilan   muvofiq
ishlaydigan ilovalarni yaratish uchun ishlatiladi.
Freymvorklar esa mobil ilovalar yaratishda foydalaniladigan tayyor qismlar,
qo'llanmalar   va   kodlar   to'plamlari   hisoblanadi.   Ba'zi   eng   mashhur   mobil
freymvorklar quyidagilardir:
1. Android  freymvorki:  Android ilovalarini  yaratishda  ishlatiladigan  eng  mashhur
freymvorklar   Android   SDK   bilan   ta'minlangan.   Bu   freymvork   ilova   interfeysi
yaratish   uchun   UI   qismi   (Activity,   Fragment),   ma'lumotlar   bazasi   integratsiyasi
(SQLite, Room), tarmoq ishlash (Retrofit), hujjatlar, multimedia muhit va boshqa
komponentlarni o'z ichiga oladi. 2.   iOS   freymvorki:   iOS   ilovalarini   yaratishda   Apple   tomonidan   taqdim   etilgan
UIKit   freymvorki   o'rnatilgan.   UIKit,   ilova   interfeysi   yaratishda   kerakli
komponentlarni (View, ViewController), animatsiya, aloqa, grafika, hujjatlar bilan
ishlash, tarmoq, multimediyalar va boshqa ilova funktsiyalarini o'z ichiga oladi.
3.   React   Native:   React   Native,   ham   Android   ham   iOS   uchun   mobil   ilovalarni
yaratishda   ishlatiladigan   tanlovdan   chiqgan   bir   freymvork   hisoblanadi.   Bu
freymvork   JavaScript   tilidan   foydalanadi   va   bir   marta   yozilgan   koddan   ham
Android, ham iOS ilovalarini o'rnatish imkonini beradi. 
4.  Flutter:   Flutter,  Google   tomonidan  taqdim   etilgan  freymvork   hisoblanadi.   Dart
dasturlash   tilidan   foydalanadi   va   kross-platforma   ilovalarni   yaratish   imkonini
beradi.   Flutter,   ilova   interfeysi,   animatsiya,   grafika,   tarmoq,   hujjatlar   va   boshqa
funktsiyalar uchun mo'ljallangan keng imkoniyatlarga ega.
Bu   faqat   ba'zi   freymvorklar   va   tillar,   mobil   ilovalar   yaratishda   foydalaniladigan
ko'p   vaqt   o'tkaziladigan   turli   freymvorklar   mavjud.  Tanlov   shaxsiy   va   loyihaning
talablari, tajribangiz va shaxsiy qobiliyatlariga qarab belgilanishi lozim.
Mobil ilova yaratishning muhim qadamlari quyidagicha bo'lishi mumkin:
1.   Maqsad   va   tushunchalarni   aniqlash:   Mobil   ilova   yaratish   jarayonini   boshlash
uchun   ilovaning   maqsadini   va   tushunchalarini   aniqlashingiz   kerak.   Maqsad,
ilovaning   qanday   bir   vazifani   bajarishi   kerakligini   ifodalaydi,   masalan,   e-tijorat
platformasi, ijtimoiy tarmoq ilovasi yoki o'yin.
2.  Qo'llanuvchilar   tahlili:   O'zlangan  foydalanuvchilar   tahlili,  ilovangizning   asosiy
maqsad   va   yo'nalishini   aniqlashga   yordam   beradi.   Foydalanuvchilar   tahlili,
o'zining   talablari,   ehtiyojlari   va   yo'qotishlari   bo'yicha   ma'lumotlar   to'plashni   o'z
ichiga oladi. Bu ma'lumotlar, ilovangizni foydalanuvchilar uchun foydali va qulay
qilishda foydalanish mumkin.
3. Dizayn va interfeys yaratish: Ilova dizayni va tashqi interfeysi, foydalanuvchilar
bilan   muloqotda   bo'lishning   asosiy   qismidir.   Uning   o'rnatilgan   dizayni,   yoritish,
ranglar va elementlar o'z ichiga oladi. Foydalanuvchilar bilan hamkorlik qilish va ularga  qulaylik  ko'rsatish   uchun  dizayn  va  interfeysning  intuitiv  va  qulay  bo'lishi
kerak.
4.   Ilova   dasturlash:   Ilova   dasturlash   jarayonida,   yaratilgan   tushunchalarni   va
dizaynni   asosida   mobil   ilovani   amalga   oshirish   uchun   dasturlash   tilidan
foydalanish kerak. Android ilovalari  uchun  Java yoki  Kotlin, iOS ilovalari  uchun
Swift   dasturlash   tillari   o'zining   platformasiga   moslashtirilgan   holda   ishlatiladi.
Dasturlash muhiti va vositalaridan foydalanib, ilova asosiy funksiyalarini yaratish
va ulardan foydalanish mumkin.
5.   Testlash   va   ishga   tushirish:   Ilova   yaratilgandan   so'ng,   uni   kuchli   siniqqa
o'tkazish kerak. Xato va muammo larni aniqlash uchun test jarayonlari o'tkaziladi.
Bu   loyihani   to'g'ri   ishlashini   va   foydalanuvchilarga   qulaylik   ko'rsatishini
ta'minlashga   yordam   beradi.   Testlar   natijalariga   muvofiq   taqrimanliklar   va
to'liqishlar amalga oshirilishi kerak.
6.   E'lon   qilish   va   tarqatish:   Ilova   ishga   tushirish   jarayonida   uning   e'loni   va
tarqatishi   muhim   bo'ladi.   Ma'lumotlar   bazasida,   mobil   ilova   doirasidagi
xizmatlarda   va   turli   platformalardagi   ilova   do'konlarida   ilovaning   o'rnatilishi   va
tarqatishini ta'minlash kerak. ASOSIY QISM
2.1. IELTS_Speaking ilovasini mantiqiy strukturasi.
1.   Bosh   sahifa:   Ilovani   ochgandan   so'ng   foydalanuvchi   bosh   sahifani
ko'rsatadi.   Bu   sahifada   umumiy   ma'lumotlar   va   ilovaning   mavjud   imkoniyatlari
haqida qisqa ma'lumotlar berilishi mumkin.
2. Savollar ro'yxati: Bosh sahifada foydalanuvchi savollar ro'yxatini ko'rib chiqishi
mumkin. Bu ro'yxat, mavjud savollar to'plamini ko'rsatadi. Foydalanuvchi istagan
savolni tanlab uni javoblash uchun kirishi mumkin.
3.   Savol   sahifasi:   Foydalanuvchi   savolni   tanladi   va   javobni   kiritish   uchun   savol
sahifasiga   o'tadi.   Bu   sahifada   savol   ko'rsatilishi,   variantlar   (agar   mavjud   bo'lsa)
berilishi va foydalanuvchining tanlovi bilan javobni jo'natish imkoniyati mavjud.
4.   Javoblar   sahifasi:   Foydalanuvchi   savolga   javob   berdikdan   so'ng,   javoblar
sahifasiga o'tkaziladi. Bu sahifada foydalanuvchi javobni tekshirishi va javobning
to'g'ri   yoki   noto'g'ri   bo'lishini   ko'rish   imkoniyati   mavjud.   Shuningdek,   umumiy
javoblar statistikasi va natijalar ko'rsatilishi mumkin.
5.   Natijalar   sahifasi:   Foydalanuvchi   savollar   to'plamini   to'liq   javoblaygandek,
natijalar   sahifasiga   o'tish   imkoniyati   mavjud.   Bu   sahifada   foydalanuvchi   o'zining
umumiy javoblari, to'g'ri javoblar soni, noto'g'ri javoblar soni, javoblash natijalari
va boshqa istatistik ma'lumotlarni ko'rish imkoniyati mavjud.
6. Qo'shimcha funktsiyalar: Ilova uchun qo'shimcha funktsiyalar qo'shish mumkin,
masalan,   foydalanuvchilarga   savollar   yaratish   imkoniyati,   natijalarni   baholash,
boshqa foydalanuvchilar bilan natijalarni ulashish va boshqalar.
Shakllantirish   asosida,   ilovaning  dizayni,   rang  tushunish,   interfeys   elementlari   va
animatsiyalar   o'zgartirilishi   mumkin.   Buning   uchun   dizayn   qoidalari,
foydalanuvchi   tajribasi   va   yuqori   qo'llanuvchilikga   e'tibor   berish   kerak.
Arayuzning   ergonomik   va   intuitsioniy   bo'lishi,   foydalanuvchilar   uchun   yaxshi
tajriba ta'minlashda katta ahamiyatga ega.
                              
                                      Dastur strukturasi tuzilishi
2.2. Ilova foydalanuvchi interfeysini yaratish
Android Studio, Android ilovalarini yaratish uchun rasmiy integratsiya 
muhitini taqdim etuvchi kompilyator va muharrir hisoblanadi. U Android 
ilovalarini yaratish, kod yozish, grafiklar tahrir qilish, ilova testini o'tkazish va 
ilovani boshqarish imkonini beradi.
Java esa umumiy maqsadli dasturlash tili hisoblanadi, Android ilovalarini 
yaratish uchun ham ko'p ishlatiladi. Java, platformaga bag'li bo'lib, Android 
ilovalarini yaratish uchun Android Studio va Android SDK bilan integratsiya 
qilinadi. Java tilida yozilgan ilovalar, Android platformasida ishlaydigan ilovaga 
aylanadi.
Java ilovalarni yaratish uchun ko'plab asosiy tushunchalar va imkoniyatlar 
mavjud. Ular quyidagilardan iborat:
1. Obyektga yo'naltirilgan dasturlash: Java obyektoriyentlangan dasturlash tili 
hisoblanadi. Bu, obyektlar yordamida ma'lumotlar va funksiyalarni birlashtirish 
imkonini beradi. Bu, dasturlarni tizimli va tartiblangan qilishga yordam beradi. 2. Platforma-mustaqil: Java, platforma-mustaqil dasturlash tili sifatida mashhurdir. 
Bu, bir marta yozilgan dastur ma'muriyati bilan turli platformalarda ishlayishi 
uchun o'z imkoniyatlarini taqdim etadi. Bu, Android, Windows, Mac OS, Linux va 
boshqalar kabi platformalarda ishlovchi dasturlarni yaratish imkonini beradi.
3. Qulay API: Java, ko'plab standart bibliotekalarni va platforma interfeyslarini 
(API) taqdim etadi. Bu interfeyslar orqali fayllar bilan ishlash, tarmoq bilan 
aloqalar o'rnatish, grafiikani boshqarish, ma'lumotlarni saqlash va yuklash, to'lov 
jarayonlarini boshqarish va boshqa amallar bajarish imkonini beradi.
4. Garb ko'rsatkichlarini boshqarish: Java, garb to'plami tomonidan avtomatik 
ravishda to'plamni boshqarishga yordam beradi. Bu, yodda tutilgan obyektlarni 
avtomatik ravishda yutib tashlash va xotiradagi ehtiyojlarni avtomatik ravishda 
belgilash va boshqarishga imkon beradi. Bu, dasturlarni xavfsiz va xotira boyicha 
samarali qilishda muhim bo'lgan tushunchadir.
Java va Android Studio, Android ilovalarini yaratishda ko'p ishlatilgan va 
o'rganilgan vositalardir. Bu texnologiyalar yordamida qulay va kuchli Android 
ilovalarini yaratish va ulardan foydalanish imkoniyatiga ega bo'lish mumkin.  
Dasturni yaratish uchun kerak bo’ladigan komponentalar:
Dasturni yaratish uchun kerak bo'ladigan komponentlar quyidagilardir:
Activity_main.xml  kod qism komponentalari:
<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout  
xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    android:background="@color/white"
    tools:openDrawer="start">     <include
        android:id="@+id/app_bar_main"
        layout="@layout/app_bar_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <com.google.android.material.navigation.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        android:background="@color/white"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer"
        app:itemIconTint="@color/drawer_item"
        app:itemTextColor="@color/drawer_item"
        app:itemBackground="@android:color/transparent"
        />
</androidx.drawerlayout.widget.DrawerLayout>
Java  kod qismini qo’shamiz.
package  com.shaikot.ielts.speaking.preparation ;
import  android.os.Bundle ;
import  com.google.android.material.navigation.NavigationView ;
import  androidx.annotation. NonNull ;
import  androidx.core.view.GravityCompat ;
import  androidx.navigation.NavController ;
import  androidx.navigation.Navigation ;
import  androidx.navigation.ui.AppBarConfiguration ;
import  androidx.navigation.ui.NavigationUI ;
import  androidx.drawerlayout.widget.DrawerLayout ;
import  androidx.appcompat.app.AppCompatActivity ;
import 
com.shaikot.ielts.speaking.preparation.databinding.ActivityMainBinding ; public class  MainActivity  extends  AppCompatActivity {
     private  AppBarConfiguration  mAppBarConfiguration ;
    private  ActivityMainBinding  binding ;
    private  DrawerLayout  drawer ;
     @Override
     protected void  onCreate (Bundle savedInstanceState) {
         super .onCreate(savedInstanceState) ;
         binding  = ActivityMainBinding. inflate (getLayoutInflater()) ;
         setContentView( binding .getRoot()) ;
         setSupportActionBar( binding . appBarMain . toolbar ) ;
         drawer  =  binding . drawerLayout ;
         NavigationView navigationView =  binding . navView ;
         // Passing each menu ID as a set of Ids because each
        // menu should be considered as top level destinations.
         mAppBarConfiguration  =  new  AppBarConfiguration.Builder(
                R.id. nav_home ,  R.id. nav_about ,  R.id. nav_feedback , 
R.id. nav_share ,  R.id. nav_rate )
                .setOpenableLayout( drawer )
                .build() ;
         NavController navController = Navigation. findNavController ( this, 
R.id. nav_host_fragment_content_main ) ;
         NavigationUI. setupActionBarWithNavController ( this,  navController , 
mAppBarConfiguration ) ;
         NavigationUI. setupWithNavController (navigationView ,  navController) ;
     }
     @Override
     public boolean  onSupportNavigateUp () {
        NavController navController = Navigation. findNavController ( this, 
R.id. nav_host_fragment_content_main ) ;
        return  NavigationUI. navigateUp (navController ,  mAppBarConfiguration )
                ||  super .onSupportNavigateUp() ;
     }
     @Override
     public void  onBackPressed () {
         if  ( this . drawer .isDrawerOpen(GravityCompat. START )) {
             this . drawer .closeDrawer(GravityCompat. START ) ;
         }  else  {
             super .onBackPressed() ;
         }
    } AndroidMainfest.xml  kod qismi.
<? xml version ="1.0"  encoding ="utf-8" ?>
<manifest  xmlns: android ="http://schemas.android.com/apk/res/android"
     xmlns: tools ="http://schemas.android.com/tools"
     package ="com.shaikot.ielts.speaking.preparation" >
    <uses-permission  android :name ="android.permission.INTERNET" />
    <application
         android :allowBackup ="true"
         android :dataExtractionRules ="@xml/data_extraction_rules"
         android :fullBackupContent ="@xml/backup_rules"
         android :icon ="@mipmap/ic_launcher"
         android :label ="IELTS_SPEAKING_PART"
         android :roundIcon ="@mipmap/ic_launcher"
         android :supportsRtl ="true"
         android :theme ="@style/Theme.IELTS_SPEAKING"
         tools :targetApi ="31" >
        <activity
            
android :name ="com.shaikot.ielts.speaking.preparation.MainActivity"
             android :exported ="true"
             android :label ="@string/app_name"
             android :theme ="@style/Theme.IELTS_SPEAKING.NoActionBar" >
            <intent-filter>
                <action  android :name ="android.intent.action.MAIN"  />
                <category  android :name ="android.intent.category.LAUNCHER"  />
            </intent-filter>
        </activity>
        <meta-data
             android :name ="com.google.android.gms.ads.APPLICATION_ID"
             android :value ="@string/admob_app_id"  />
    </application>
</manifest> 2.5.Dasturni qurish va apk fayl tayyorlash.

Ingliz tilida gapirishni rivojlantirish ilovasi – foydalanuvchilarning ingliz tilidagi muloqotini yaxshilash uchun xizmat qiladigan , shuningdek IELTS imtihoniga tayyor bo ’ lishda ko ’ maklashadigan ilovani loyihalash va ishlab chiqish Reja: Kirish Nazariy qism: 1.1. Mobile ilovalar va ularning asosiy tushunchalari 1.2. Mobile ilovalar yaratish Asosiy qism: 2.1. “ IELTS_Speaking” dasturini mantiqiy strukturasi va uni shakllantirish 2.2. Ilova foydalanuvchi interfeysini yaratish 2.3. Ilova funksionaligini taminlash 2.4. Dasturni qurish va apk fayl tayyorlash Xulosa Foydanaligan adabiyotlar

Kirish Mobil ilovalar, mobil qurilmalar uchun yaratilgan dasturlar hisoblanadi. Bu ilovalar, odatda mobil qurilmalarda ishga tushiriladigan boshqa ilovalardan farqli o'laroq, o'rnatilgan mobil qurilmani yaxshiroq qo'llashga yordam beradi. Mobil ilovalar, Android va iOS (Apple) platformalariga mo'ljallangan o'ziga xos dasturlash tilida yoziladi. Mobil ilovalarning asosiy tushunchalari quyidagilardir: 1. Mobil ilova tashqi interfeysi (UI): Mobil ilovalar o'zining tashqi interfeysi orqali foydalanuvchilar bilan muloqotda bo'ladi. Bu interfeys, tugma, ikon, menyu va boshqa interaktiv elementlarni o'z ichiga oladi. Mobil ilovalar, intuitiv, qulay va ishlashga mo'ljallangan interfeyslarga ega bo'lishi kerak. 2. Mobil ilova asosiy funksiyalari: Mobil ilovalarning asosiy funksiyalari, qurilma tomonidan taqdim etilgan imkoniyatlardan foydalanish orqali bajariladi. Misol uchun, telefon qo'llanilgan ilovada qo'ng'iroq qilish, habar yuborish, rasmlarni olish, matn yozish va boshqalar kabi funktsiyalar bo'lishi mumkin. 3. Mobil ilova ma'lumotlar bazasi: Ko'plab mobil ilovalar, ma'lumotlarni saqlash uchun ma'lumotlar bazasidan foydalanadi. Bu ma'lumotlar bazasi, ilovaga tegishli ma'lumotlarni saqlab qo'yish, o'qish va o'zgartirishga imkon beradi. Bu, ilova ma'lumotlarini doimiy saqlab turishni ta'minlayadi va foydalanuvchilar va ilovaga xizmat ko'rsatuvchilar orasidagi ma'lumot almashishini mumkin qilar. 4. Mobil ilova to'plamlari: Mobil ilovalar, asosan bir nechta fungsional to'plamlar yig'indisi sifatida yaratiladi. Bu to'plamlar, bir xil maqsad uchun yaxshi integratsiya qilgan va bir-biri bilan aloqador bo'lgan ilova o'rikalaridan iborat bo'lishi mumkin. Masalan, xarita ilovasi to'plami, o'qish-to'qish ilovasi to'plami yoki ijtimoiy tarmoq bilan bog'liq ilovalar to'plami kabi. 5. Mobil ilova yo'nalishi: Mobil ilovalar, turli sohalarga yo'naltirilgan bo'lishi mumkin. Bu sohalar, biznes ilovalari, ijtimoiy tarmoq ilovalari, o'yinlar,

ma'lumotlar analizi ilovalari, xarita va navigatsiya ilovalari, e-tijorat ilovalari va boshqalar kabi bo'lishi mumkin. Mobil ilovalar o'zgaruvchan va rivojlanadigan sohalar hisoblanadi. Yangi texnologiyalar va talablar bilan o'zgarishlarga vaqt o'tganda, mobil ilovalar ham davom etib borayotgan rivojlanishini kutib olish mumkin. NAZARIY QISM

1.1. Mobile ilovalar va ularning asosiy tushunchalari Mobil ilova (inglizcha: Mobile app) — ma lum bir platforma (iOS, Android,ʼ Windows Phone va boshqalar) uchun ishlab chiqilgan smartfonlar, planshetlar va boshqa mobil qurilmalarda ishlashga mo ljallangan dastur. Ko pgina mobil ilovalar ʻ ʻ qurilmaning o zida oldindan o rnatiladi yoki ularni App Store, Google Play va ʻ ʻ boshqalar kabi onlayn dastur do konlaridan bepul yoki pullik yuklab olish ʻ mumkin.Dastlab, mobil ilovalar elektron pochtani tezda tekshirish uchun ishlatilgan, ammo ularning yuqori talablari boshqa sohalarda ham kengayishiga olib keldi, masalan, mobil telefon va GPS o yinlari, suhbatlashish, video tomosha ʻ qilish va Internetdan foydalanish. Ushbu atama 2007-yildan beri juda mashhur bo lib, 2010-yilda Amerika Dialektik Jamiyati tomonidan „Yil so zlari“ ro yxatiga ʻ ʻ ʻ kiritilgan.Mobil ilovalar bozori bugungi kunda juda rivojlangan va barqaror o sib ʻ bormoqda. Statista prognozlariga ko ra, 2020-yilda mobil ilovalar sanoatining ʻ yillik yalpi daromadi $189 milliarddan oshadi.Mobil ilovalar - smartfon va planshetlar kabi mobil qurilmalar uchun ishlab chiqilgan dasturiy ta'minot. Ular mobil qurilmalarni funktsiyali va qiziqarli miniatyura kuchlariga aylantiradi. Ba'zi qurilmalar ishlab chiqaruvchilarining ayrim uyali ilovalari yoki ular bilan bog'langan uyali aloqa provayderlari bilan oldindan o'rnatilgan bo'ladi, lekin ko'plab ilovalar qurilmaga xos ilova orqali mavjud do'konlar. Ushbu ilovalarning maqsadlari o'yin-kulgidan, mahsuldorlikdan va o'yin- kulgidan o'yin-kulgi, sport, fitnes va boshqa har qanday odamni tasavvur qilish uchun gamutni boshqaradi. Ijtimoiy media - mobil ilovalarni ishlab chiqish va qabul qilishning eng mashhur yo'nalishlaridan biri. Aslida, Facebook barcha platformalarda 2017-yilda eng keng tarqalgan dastur hisoblanadi.Ko'pgina onlayn ob'ektlar mobil veb-saytlar va mobil ilovalarga ega. Umuman olganda, farq bir maqsadga qaratilgan: App odatda mobil veb-saytga qaraganda kichikroq bo'ladi, ko'proq interaktivlik taklif qiladi va mobil qurilmada ishlatish oson va intuitiv ravishda yanada aniqroq ma'lumotlarni taqdim etadi. Mobil ilovalar turlari. Smartfon bozori deyarli bir necha o'n yillar oldin o'sishni boshlagan, ammo bu uning eng yaxshi daqiqasi deb ayta olamiz.Ilovalar

ularning eng muvaffaqiyatli strategik nuqtasi edi va ular tasniflana boshlagan va turli vazifalarni hal qilishga moyil bo'lganida, ularning tegishli do'konlarida yana ko'plab takliflar paydo bo'ldi.Biroq, kompaniya o'z savdolarini yoki ular orqali mavqeini oshirishga qaror qilishi uchun nima ekanligini bilish muhimdir Mobil ilovalar turlari bozorda mavjud, shuningdek, uning asosiy funktsiyalari va xususiyatlari sizning auditoriyangizga va potentsial mijozlarga eng mos keladiganini tanlash uchun. Agar dasturlash va uning rivojlanishini tashkil etuvchi elementlar haqida gapiradigan bo'lsak, biz guruhlashimiz mumkin Eng ko'p ishlatiladigan mobil ilovalarning 3 asosiy turi. Unga berilgan foydalanishga va u amalga oshiriladigan qurilmalar bilan mosligiga qarab, ular turli holatlar uchun ishlatilishi mumkin. Mahalliy ilovalar. Mahalliy mobil ilovalar ishlashi va ishlashi uchun har bir operatsion tizimning eksklyuziv tilini talab qiladigan ilovalar sifatida tanilgan. Ular ushbu maxsus qurilmalarning talablari asosida ishlab chiqilgan, shuning uchun ular har bir tizimning spetsifikatsiyalari bo'yicha alohida ishlashi kerak.Misol uchun, Android-da ishlashi uchun iOS uchun mo'ljallangan mahalliy ilova uchun to'liq noldan va Android operatsion tizimi tilida qo'shimchasini yaratish kerak, ya'ni operatsiyalarni qo'llab-quvvatlashni alohida ajratish kerak.Shu ma'noda iOS ilovalari Objective-C tili ostida ishlab chiqilgan bo'lsa, Android esa ushbu operatsion tizimni ishlab chiqish vaqtida foydalanilgan Java bilan ishlaydi. Agar siz boshqa tizim uchun ilovani loyihalashni rejalashtirmoqchi bo'lsangiz, u o'ziga xos tilda bajarilishi kerak. Afzalliklar. Ushbu ilovalarning funktsiyalariga ko'ra, biz kompaniyamiz uchun kerak bo'lgan yoki nima qilishni xohlayotganimizni tanlashda hisobga olinadigan bir qator afzalliklarni aniqlashimiz mumkin. Agar dastur iOS uchun ishlab chiqilgan bo'lsa, u turli modellarda mavjud bo'lgan barcha funktsiyalarni hisobga oladi, shunda dastur dasturiy ta'minoti o'zining ishlashi va bajarilishida ulardan foydalanadi. Bu uni tashkil etuvchi xususiyatlarni sezilarli darajada kengaytiradi.Misol uchun, agar telefonda barmoq izini o'qish qurilmasi bo'lsa, WhatsApp kabi mahalliy ilova o'z tizimini buzg'unchilardan himoya qilish uchun