logo

Kundalik yangiliklar va jurnallar kurs ishi

Yuklangan vaqt:

20.11.2024

Ko'chirishlar soni:

0

Hajmi:

2829.6962890625 KB
Kundalik yangiliklar va jurnallar  
MUNDARIJA
KIRISH ...................................................................................................................... 2
I.   BOB.   ANDROID   STUDIO   VA   JAVA   DASTURLASH   TILI   VA   UNING
IMKONIYATLARI. .................................................................................................. 4
1.1 Android va Java dasturlash tili va uning hozirgi kundagi o’rni. ........................... 4
1.2 Androidning asosiy va qo’shimcha komponentlari. Eng ko’p foydalaniladigan 
komponentlar va freymvorklar. ................................................................................... 8
II.   BOB.   JAVA  DASTURLASH   TILIDA   “KUNDALIK   YANGILIKLAR   VA
JURNALLAR” NING INTERAKTIV MOBIL ILOVASINI YARATISH ........ 13
2.1. Android Studio Java dasturlash tilida ilovaning foydalanuvchi interfeysini (UI) 
ishlab chiqish ............................................................................................................. 13
2.2. Mobil ilovaning ishlashi bo'yicha tafsilotlar ...................................................... 18
XULOSA .................................................................................................................. 20
FOYDALANILGAN ADABIYOTLAR ................................................................ 21
1 KIRISH
Mavzuning   maqsad   va   vazifalari : “ Kundalik   yangiliklar   va   jurnallar ”  mobil
ilovasini   yaratishning   asosiy   maqsadi   va   vazifalari   quyidagilardir :
“ Kundalik   yangiliklar   va   jurnallar ”   mobil   ilovasi   yaratish   uchun   maqsad   va
vazifalarni   boshqarish   asosiy   qadam   bo ' lib ,   bu   dasturning   muqova   va
foydalanuvchilar   uchun   yaxshi   tajribani   ta ' minlash   maqsadida   amalga   oshiriladi .
Quyidagi   vazifalar   supermarket   uchun   mobil   ilova   yaratishda   muhim   bo'lgan
maqsadlardan ba'zi o'rin olganidek:
Xizmatlar   va   qulayliklar:   Foydalanuvchilar   ushbu   ilova   orqali   turli   xil
mahsulotlarni sotib olishi va yetkazib berish xizmatidan unumli foydalanishdir. 
Mahsulotlar   to'lovi   va   buyurtma   hisobotlari:   To'lov   tizimi   va   moliyaviy
operatsiyalarni   boshqarish.   Foydalanuvchilar   to'lovlarini   bajarishlari   va   to'lovlarini
nazorat qilishlari mumkin bo'lishi kerak.
Foydalanuvchilar   bilan   aloqalar:   Foydalanuvchilar   bilan   interaktiv   aloqalar
o'rnating.   Shikoyatlar,   so'rovnoma,   sharhlar   va   tajribalarni   qo'llash   imkoniyatini
yaratish.
Ma'lumotlar   bazasi   va   statistika:   Foydalanuvchilar   aktivliklarini   monitoring
qilish,   ularning   ma'lumotlarini   saqlash   va   saytni   yanada   yaxshi   boshqarish   uchun
statistik ma'lumotlarni tahlil qilish.
Kurs   ishi   tuzilmasining   tavsifi :   Mazkur   tadqiqot   ishi   kirish,   tanlangan
ob’ektlar   va   tadqiqot   usullari,   kurs   ishi   boblari,   xulosa   hamda   foydalanilgan
adabiyotlar ro‘yxatidan iboratdir.
Kurs   ishining   kirish   qismida   qaralayotgan   ishning   dolzarbligi,   ishning
maqsadi, ishning ilmiyligi, tadqiqotning amaliy ahamiyati va kurs ishining tuzilishi
to‘g‘risidagi umumiy ma’lumotlar keltirilgan.
Kurs ishining tanlangan ob’ektlar va tadqiqot usullari bo‘limida tadqiqot olib
borilayotgan ob’ekt haqida umumiy ma’lumotlar berilgan. Shu bilan birga tadqiqot
ob’ektini o‘rganish usullari va qo‘yilgan maqsadga erishish uchun kerak bo‘ladigan
qurilma   va   dasturiy   ta’minotlar,   ishni   amalga   oshirish   usullari   haqida   umumiy
ma’lumotlar keltiriladi.
2 Tadqiqot   ishning   birinchi   bobida     Java   dasturlash   tili   va   turli   framevorklar
bilan ishlash, ulardan foydalanish  haqida ma’lumotlar keltirilgan.
Kurs   ishining   ikkinchi   bobida   supermarket   mobil   ilovani   kuzatuvchilar
foydalanishi uchun kerak buladigan bo`limlari va imkoniyatlar haqida ma`lumotlar
berib o’tilgan.
Kurs   ishining   xulosa   qismida   bajarilgan   ishning   amaliyotga   qo‘llanilishi
natijasida kelib chiqadigan xulosalar va tavsiyalar keltiriladi.
Kurs   ishining   so‘ngida   esa   foydalanilgan   adabiyotlar,   elektron   kitoblar
ro‘yxatlari keltirilgan.
Kurs  ishining  tuzilishi :   Kurs   ishi  kirish  qismi,  mundarija,  xulosa   va  ilmiy-
amaliy tavsiyalar hamda foydalangan adabiyotlar ro‘yxatidan iborat.
Men   “Kundalik   yangiliklar   va   jurnallar”   mobil   ilovasini   java   dasturlash
tilining   keng   imkoniyatlaridan   foydalangan   holda   ushbu   mobil   ilovani   ishlab
chiqishni o’z oldimga maqsad qilib oldim. Bu haqidagi mobil ilovalar ko’p bulsada
bazi foydalanuvchilar mobil ilovalarni ko’p imkoniyatlaridan foydalana olishmaydi
hamda tezkor yangiliklarni  o’tkazib yuborishadi. Men esa bu mobil ilovani barcha
osongina   foydalana   olishi   uchun   oddiy   va   soda   ko’rinishda   ishlab   chiqishga   qaror
qildim
Ushbu   mobil   ilova   insonlar   uchun   masofadan   turib   xarid   qiladi   va   yetkazib
berish   xizmatidan   foydalanadi   va   bu   orqali   ularning   vaqti   tejaladi   va   masofadan
turib ishonarli mahsulotlarni xarid qiladi. 
3 I. BOB. ANDROID STUDIO VA JAVA DASTURLASH TILI VA UNING
IMKONIYATLARI.  
1.1 Android va Java dasturlash tili va uning hozirgi kundagi o’rni.
 Android operatsion  tizimi  Google kompaniyasi  tomonidan yaratilgan mobil
OS hisoblanadi. Bu tizim  Linux kernel  ning modifikatsiyalangan versiyasi  asosida
qurilgan bo’lib, asosan touchscreen ya’ni sensorli ekranda boshqarish uchun ishlab
chiqilgan.   Masalan   smartfonlar,   planshetlar,   aqlli   soatlar   va   hokazo.   Shuningdek,
Google   korporatsiyasi,   Android   tizimini   Android   TV   lar,   Android   Auto
avtomobillari, Wear OS soatlar va boshqa shu kabi qurilmalar uchun moslashtirilgan
interfeysga   ega   tizim   versiyalarini   yaratib   kelmoqda.  Android   turli   xil   variantlari
o’yin   konsollari,   raqamli   video   kameralar,   kompyuterlar   va   boshqa   elektron
qurilmalar uchun ham mavjud. 
Shu bilan birga Android tizimi Google tomonidan yaratilgan xususiy dasturiy
to’plamga   ega.   Ular   Google   Mobile   Services   (GMS)   deb   nomlanadi.   Bu   paket
dasturlar   to’plami   juda   ko’p   qurilmalarga   o’rnatilgan   bo’lib,   Google   Chrome   web
brouzeri,   Google   Search   qidiruv   ilovasi,   Gmail   pochta   ilovasi   va   shuningdek
yangilikla va raqamli distributiv platforma Google Play ni o’z ichida oladi.
Android   2011-yildan   beri   dunyoda   eng   yaxshi   sotiladigan   smartfonlar   va
2013-yildan   boshlab   eng   ko’p   sotilgan   planshetlar   operatsion   tizimi   hisoblanadi.
2017-yil   may   oyiga   ko’ra   oylik   aktiv   foydalanuvchilar   soni   ikki   mlrd.   dan   ziyod
operatsion   tizim   va   2018-yil   dekabr   oyidan   Google   Play   ilovalar   2.6   milliondan
ortiq ilovalar dasturchilar tomonidan joylashtirilgan.
Tizim   interfeysi   asosi   to’g’ridan-to’g’ri   boshqaruv   (direct   manipulation)
asosida   tegish   harakatlaridan   (touch   actions)   foydalangan   holda,   real   harakatlarni
amalgan   oshirish   imkonini   beradi.   Masalan,   surish,   chertish,   tegish,   ushlab   turish
orqali   obyektlarni   boshqarish,   virtual   klaviatura   va   shu   kabilarni   o’z   ichiga   oladi.
Ilovalar qurilma imkoniyatlarini kengaytiradi, ular Android Software Development
Kit   (SKD)   va   Java   dasturlash   tili   yordamida   yoziladi.   Shuningdek   tizim   Go
dasturlash  tilini  ham   qo’llab-quvvatlaydi, garchi   ilovalar   interfeyslariga  cheklovlar
4 qo’yilgan bo’lsa ham. 2017-yil may oyida Google Android ilovalarni ishlab chiqish
uchun Kotlin dasturlash tilini qo’llab-quvvatlashini e`lon qildi.
Android Studio
 Android Studio JetBrains ning IntelliJ IDEA dasturiy loyihasi bo’lib, Google
ning Android operatsion tizimi uchun dasturiy taminot yaratish uchun mo’ljallangan
rasmiy   IDE   (Integrated   Development   Environment)   si   hisoblanadi.   Ushbu
dasturlash   muhiti   macOs,   Windows   va   Linux   operatsion   tizimlari   uchun
mo’ljallangan versiyalari  mavjud. Android uchun avvalgi  alternativ dasturiy muhit
Eclipse   Android   Development   Tools   (ADT)   o’rnini   xozirgi   kunga   kelib   aynan
Android Studio egallagan. 
Android   Studio   2013-yil,   16-mayda   Google   I/O   konferensiyasida   e`lon
qilingan.   Eng   birinchi   versiyasi   0.1   dan   boshlangan   va   2014-yil   iyunda   0.8-beta
versiyasi chiqarilgan. Muqobil 1.0 versiyasi 2014-yil dekabr oyida taqdim qilingan.
 Xususiyatlari 
• Gradle-based qurishni qo’llab-quvvatlash 
• Android-maxsus kodni refaktrolash va tuzatish
  • Lint-tools unumdorlikni oshirish, barqarorlashtirish, versiyalar nazorati va
boshqa muammolarni yechish 
• ProGuard integratsiyasi va ilovani (app-signing) identifikatsiya qilish 
• Template-based umumiy Android dizaynlarni va komponentlarni yaratish
  • Drag and drop orqali komponentlarni boshqarish imkoniga ega bo’lgan va
ko’p ekranlarda ilovaning ko’rinishini ko’rish qobiliyatiga ega layout tahrirlovchi.
• Android Wear uchun ilovalarni yaratishni qo’llab-quvvatlash 
• Google Could Platform uchun qurishni  qo’llab-quvvatlash, Firebase Could
Messaging va Google App Engine larni integratsiya qilish imkoniyati 
• Android Virtual Device (AVD Emulator) ilovalarni virtual debug qilish
Android   Studio   IntelliJ   ning   deyarli   barcha   dasturlash   tillarida   ishlay   oladi.
Masalan,   Java,   C++   va   boshqa   kengaytirilgan   tillar,   Go   kabilar.  Android   ning   3.0
versiyasidan   boshlab   Kotlin   dasturlash   tili   kiritildi.   Shuningdek,   Java   7,   Java   8   va
Java 9 ning bazi xususiyatlaridan foydalanadi.
Java
5 Java   obyektga   yo naltirilgan   dasturlashʻ   ( inglizcha :   OOP   —   Object   Oriented
Programming ) tili va u C++ ga ancha o xshash. Eng ko p yo l qo yildigan xatolarga	
ʻ ʻ ʻ ʻ
sabab bo luvchi qismlari olib tashlanib, Java dasturlash tili ancha soddalashtirildi.	
ʻ
Java   kod   yozilgan   fayllar   ( *.java   bilan   nihoyalanuvchi)   kompilatsiyadan
keyin   bayt   kod   ( inglizcha :   bytecode )   ga   o tadi   va   bu   bayt   kod	
ʻ   Java   Virtual
Mashinasi JVM   tomonidan o qib yurgizdiriladi.	
ʻ
Java afzalliklari:
WORA   —   ( inglizcha :   Write   Once,   Run   Anywhere   -   portable).   Platforma
tanlamaydi;
xavfsizlik (ishonch yo q kodni xavfsiz ishga tushirish);	
ʻ
xotirani xavfsiz boshqarish (avtomat ravishda chiqindilarni yig adi);	
ʻ
tarmoq uchun dasturlar yozish;
ko p oqimli (	
ʻ inglizcha :   Multi-thread ) dasturlash;
dinamik & kengaytirish;
Class lar alohida fayllarda saqlanadi.
Java SE   ( inglizcha :   Java Standart Edition )   —   serverda , shaxsiy kompyuterda
desktoplarda ishlovchi dasturlar, appletlar yaratish uchun ishlatiladi. Bu texnologiya
yordamida   yaratilgan   dasturlar   deyarli   barcha   operatsion   tizimlarda   ishlay   oladi
6 ( Windows   NT ,   Macintosh,   Linux   va   Solaris).   Shu   bilan   birga   JavaSE   boshqa   Java
turlarining asosi hisoblanadi.
JVM   (Java   Virtual   mashinasi)   JVM   ning   vazifasi   tarjimonlik   ya’ni,   dastlab
biz   yozgan   *.java   fayl   kompilyator   yordamida   bayt   kod   ga   o’giriladi   va   JVM
yordamida   esa   mashina   tiliga   aylantiriladi.   Bu   degani   JVM   qaysi   platformaga
tegishli   bo’lsa,   kodlarni   ham   o’sha   platformaga   moslab   beradi.   JVM   ni   ko’pgina
qurilmalar va dasturiy ta’minotlar uchun ishlatish mumkin. Har bir OT (operatsion
tizim)   uchun   JVM   JRE   va   JDK   lar   konfiguratsiyasi   farq   qiladi,   chunki   bular
platformaga bog’liq. Lekin java mustaqil platforma hisoblanadi.
JVM ning amalga oshiradigan asosiy vazifalari
Loads code (kod yuklanishi)
Verifies code (kod tekshirilishi)
Executes code (kod bajarilishi)
Provides runtime environment (dasturni bajarilish muhitini ta’minlash)
JRE (Java bajarilish muhiti)
JRE – Java Runtime Environment
JRE   –   bu   faqat   dastur   bajarilishi   uchun   kerak   bo`lgan   muhit   xolos.   Dasturchi
bo`lmagan oddiy foydalanuvchilarga Java dasturlari bajarilishi uchun JRE yetarlidir.
JDK (Java Development Kid) - JDK tarkibida JRE va boshqa qo'shimcha dasturlash
uskunalari bo'ladi.
7 1.2 Androidning asosiy va qo’shimcha komponentlari. Eng ko’p
foydalaniladigan komponentlar va freymvorklar.  
Asosiy komponentlar: 
• Activitylar 
• Serviceslar 
• Broadcast Receiverslar 
• Content Provayderlar Qo’shimcha komponentlar: 
• Fragmentlar 
• Viewlar 
• Layoutlar 
• Resourcelar 
• Manifest
Activitylar 
Har bir ilovada mavjud bo’lishi shart
Viewlar / Foydalanuvchi interfeysi
Intentlar
Servislar
Har bir ilovada mavjud bo’la oladi
Content Providerlar
Broadcast Receiverlar
Ilovalar   komponentlari   Android   ilovalarni   qurishning   ajralmas   bo’lagi
hisoblanadi.   Komponentlar   ilovaning   Android   Manifest.xml   fayli   erkin   e`lon
qilingan va izohlangan, ularning xususiyatlari keltirilgan bo’lishi kerak.
 Ilovalar va APK fayllar
Android   ilovalar   APK   faylga   (Android   application   package)   o’ralgan
(packaged)   yoki   yig’ilgan   va   arxivlangan   fayllar   to’plamidir.   APK   fayllar   Java
kodlar va boshqa resurslarni ya`ni matnlar va rasm kabilarni o’z ichiga oladi. 
Activitylar 
Android   activitylar   ilovalarning   foydalanuvchi   interfeysi   bir   ko’rinishli
screeni hisoblanadi. Foydalanuvchi interfeysini bu tarzda tasvirlash xuddi Windows
ning   ishchi   oynalariga   o’xshab   ketadi.   Ilovalarda   bir   yoki   ko’plab   activity
ko’rinishlari   bo’lishi   mumkin,   bu   ko’p   ko’rinishli   yoki   bir   ko’rinishli   bo’lishi
mumkinligidan   dalolat   beradi.   Ilovalar   ishga   tushganda   birinchi   bo’lib   bosh
activitydan boshlanadi va unga yana qo’shimcha activitylar qo’shilishi mumkin.
Servicelar 
8 Android   Servicelar   orqa   fondagi   yani   fon   rejimidagi   jarayonlarni   ishga
tushirish   va   ma`lum   operatsiyalarni   bajarish   uchun   mo’ljallangan.   Xattoki   ilova
ko’rinmayotgan bo’lsa ham. Servicelar uchun foydalanuvchi interfeysi zarur emas.
Servicelar   belgilangan   vaqt   intervalida,   masalan   har   soatda,   serverdagi
malumotlarni tekshirishi, ulardan backup ko’chirishi, malumot yuborishi va hokazo
amallari   bajarish   imkoniyatiga   ega.   Misol   uchun,   foydalanuvchi   musiqani   orqa
fonda   eshitib,  boshqa   ilovalarda  ishlashi  yoki  foydalanuvchi  activityni  bloklashiga
qaramasdan serverdan malumot qabul qilishi mumkin. 
Broadcast Receiverlar 
Radioeshittirish   qabul   qiluvchilari   –   bu   komponent   ilovalar   o’rtasida   yoki
tizim   bilan   ilova   o’rtasidagi   aloqani   taminlash   va   xabarlar   almashish   imkonini
beradi.   Masalan,   biror   ilova   internetdan   fayl   ko’chirib   olsa,   u   bu   haqda   boshqa
ilovani   ogohlantirishi   mumkin.   Aynan   manashu   narsa   broadcast   deb   ataladi.
Broadcast   Receiverlar   BroadcastReceiver   deb   nomlanuvchi   subklassni   implement
qiladi. Har bir broadcast Intent obyekti sifatida uzatiladi. 
Content Providerlar 
Content   taminlovchisi   boshqa   ilovalarga   so’rov   yuborib   ularning
malumotlarini   qabul   qilishi   mumkin.   Bu   kabi   so’rovlarni   Content   Resolver   klassi
metodlari   amalga   oshiradi.   Ma`lumotlar   fayl   tizimida,   malumotlar   bazasida   yoki
boshqa biror joyda saqlangan bo’lishi mumkin. Content provider klassini implement
qiladi   va   o’tkazmalarni   yani   malumotlar   almashishni   bajarish   uchun   boshqa
ilovalarning   API   lari   ishga   tushirilgan   bo’lishi   kerak   bo’ladi.   Masalan,   mobil
raqamlar saqlangan bazani Content provider yordamida boshqa ilovalar ko’rishi va
foydalanishi mumkin. Yoki shunga o’xshash SMS xabarlarni ko’rishi mumkin.
Qo’shimcha komponentlar 
Fragmentlar 
Androidda   fragmentlar   butunlay   foydalanuvchi   interfeysi   hisoblanadi.
Odatda,   faqat   ekranning   malum   bir   bo’laklarini   yoki   butunlay   yuzasini   egallashi
mumkin.   Fragmentlar   activitylar   ichida   foydalaniladi.   Shuningdek,   ular   turli   xil
9 activitylarda   qayta   ishlatilishi   mumkin.   Fragment   odatda   ko’rinishlar   (View)   va
ko’rinish guruhlari (ViewGroup) lar bilan deyarli bir xil bo’ladi. 
Layout XML Fayllar 
Activitylar,   fragmentlar   va   bazi   ko’rinish   guruhlari   o’zlarining   layuotlari   va
kontentlarida   XML   fayllarni   ishlata   oladi.   XML   fayl   komponentlar   xuddi   GUI
(Graphics   User  Interface)  lar,  fragmentlar  va  activitylar   kabidir.  Shunday  qilib,  bu
komponent   foydalanuvchi   interfeysini   qurishda   ishlatiladi   (o’lchamlar,   chegaralar,
oraliqlar va h.k). 
Intentlar  
Android   intentlar   kichik   obyektlar   bo’lib,   activitylar   ularni   Android
operatsion   tizimiga   uzatadi   va   foydalanuvchi   harakatlariga   kerakli   javoblarni
qaytaradi.   Misol   uchun,   foydalanuvchi   biror   rasmni   yuborishi   kerak   bo’lsa,   ilova
yuborilish   haqidagi   so’rovchi   tizimga   yuboradi   va   tizim   unga   mos   ravishda   javob
qaytaradi, masalan qaysi xizmatlar orqali yuborishini so’rashi mumkin (bluethooth,
mms   va   h.k).   Ko’pincha   intentlar   “ulashish   harakatini”   bildiradi.   Boshqa   ilovalar
qanday “ulashish harakati” qandayligi belgilaydi va kerakli buyruqni bajaradi. 
View va View Group lar 
Android   GUI   elementlari   uchta   toifaga   bo'lingan:   Activitylar,   ko'rinishlar
(View)   va   ko’rinish   guruhlari   (View   Groups).   Activity   lar   ekranlar/oynalar.
Ko’rinishlar,   matnni   ko'rsatadigan   matn   ko'rinishi,   foydalanuvchilarni   bosishi
mumkin   bo'lgan   tugma   kabi   boshqa   GUI   elementlarini   o’z   ichiga   oladi.   Ko'rinish
guruhlar   ko'rish   uchun   mo’ljallangan   konteynerlardir.   View   Group   guruhlari
birlashuvlar to'plamini hosil qiladi. Ko'rinishlar va ko'rinish guruhlarini bir faoliyat
yoki   ichki   qismda   (bir   faoliyat   doirasida   qayta   kiritilgan)   ichiga   joylashtirish
mumkin. 
AnroidManifest.xml fayli
AndroidManifest.xml   fayli   sizning   to'plamingiz,   jumladan,   dasturning
tarkibiy   qismi,   faoliyati,   xizmat   ko'rsatuvchi,   eshittirish   qabul   qiluvchilar,   kontent
provayderlari va hokazolar kabi ma'lumotlarni o'z ichiga oladi. U boshqa vazifalarni
ham bajaradi, jumladan: 
10 •   Ruxsatlar   bilan   himoyalangan   qismlarga   kirish   uchun   ilovani   himoya
qilishga javobgardir. 
• Bundan tashqari, Android api-ni dasturda ishlatishini e'lon qiladi.
• Asboblar sinflarni ro'yxatini ko'rsatadi. Asboblar sinflarini, profil va boshqa
ma'lumotlarni   beradi.   Ushbu   ma'lumotlar   dastur   nashr   etilguncha   va   undan   keyin
o’chirib yuborilishi mumkin.
Resurslar 
Androiddagi   resurslar   sizning   ilovangizdan   foydalanadigan   tasvirlar,   strings
va boshqa materiallar kabi narsalarga ishora qiladi, lekin ba'zi dasturiy tillar manba
kodi   ko'rinishida   emas.   Foydalanuvchi   interfeysi   resurslarning   boshqa   bir   turidir.
Layoutlarni   IDE   ning   strukturasi   va   drag-and-drop   GUI   ishlab   chiqaruvchisi   yoki
XML   shaklida   qo'l   bilan   tuzilgan   bir   vosita   yordamida   tuzish   mumkin.   Ba'zan
tuzilgan   foydalanuvchi   interfeysi   turli   xil   qurilmalarda   ishlaydi:   telefonlar,
planshetlar,   televizorlar   va   hk.   Ba'zan   yaratilgan   interfeys   turli   muhitlar   uchun
moslashtirilishi kerak. 
Freymvorklar  
1. GSON 
Gson   Java   kutubxonasi   bo'lib   java   obyektlarni   JSON   ichida   tartiblash   va
ularni boshqarish imkonini beradi. APIlar orqali tez-tez xabar almashish kerak bo'lib
qolsa, odatda JSONdan foydalaniladi. Chunki, u juda yengil va XML ga qaraganda
sodda tuzilgan.
2. Retrofit 
Retrofit  web  saytlardan REST API  larni  java interfeyslar  ichiga qaytaruvchi
kutubxona   bo'lib,   loyihaning  API   chaqiruvlarini   tashkil   qiluvchi   ajoyib   yechimdir.
Toza   va   oddiy   kod   orqali,   URL   ga   bog'liq   bo'lgan   metodlar   va   bir   qancha
parametrlarni   o'z   ichiga   oladi.  Parametrlar   orqali  APIga  murojaat   qilish   va   URLni
osonlik   bilan   boshqarish   yoki   so'rovlarni   amalga   oshirish   mumkin.   Ushbu
kutubxona   ikki   turdagi   metodni   qo'llab-quvvatlaydi.   Bular   sinxron   va   asinxron.
Retrofit   odatda   Gson   formatida   malumotlarni   qaytaradi.   Shuning   uchun,   unga
alohida o’zgartirilgan metodlar orqali amalga oshirish shart emas.
3. EventBus 
11 EventBus   kutubxonasi   turli   xil   ilovalar   o'rtasidagi   aloqa   va   xabar
almashishlarni   oddiy   va   sodda   usulda   amalga   oshirish   imkonini   beradi.   Masalan,
Activity dan turib ishlab turgan servisga biror malumot yuborish, yoki fragmentlar
o'rtasida oson munosabatlarni yo'lga qo'yish (interaction).
4. ActiveAndroid 
ActiveAndroid   Android   tizimi   uchun   ORM   bo'lib,   SQLite   dan   alohida,
qurilmadagi   malumotlar   bazasi   bilan   SQL   so'rovlar   yozmasdan   kommunikatsiya
qilish imkoniga ega.
ActiveAdroid   da   malumolar   bazasi   bilan   ishlashda   ko’pgina   qulaylik   va
ortiqcha   kod   xalos   bo’lishda   muhim   ahamiyat   kasb   etadi.   Shuningdek,   unga
o’xshash   boshqa   yana   bir   nechta   ochiq   kodli   kutubxonalar   ham   mavjud.   Masalan,
GreenDAO, ORMLite va hokazo.
5. Universal Image Loader 
UIL  asinxron   tarzda   rasmlarni   yuklash   va   saqlash   xususiyatiga   ega   bo'lgan
kutubxona. Shu bilan birga, rasmlarni yuklash va saqlash uchun Picasso ham yaxshi
kutubxona.   Lekin   u   to’liq   o’zgartirish   kiritish   va   boshqarishni   taminlamaydi.   UIL
esa   deyarli   barcha   konfiguratsiya   va   parametrlarini   o’zgartirishga   ruxsat   beradi
(ayniqsa,   katta   o’lchamdagi   rasmlarni   yuklash   va   saqlashda).   Ko’plab   ochiq   kodli
kutubxonalar   ilovalar   yaratishni   osonlashtiribgina   qolmay,   ularni   qisqa   vaqtda
tayyorlashda  ham  katta  yordam  beradi.  Ommabop  kutubxonalar   tez-tez  yangilanib
va   testdan   o’tkazilib   turiladi.   Android   Studio   da   ularni   Maven   orqali   osongina
loyihaga import qilish mumkin.
Gradle   ni   sinxronizatsiya   qilgandan   keyin   ushbu   kutubxonalarni   loyihda
implement qilish mumkin bo’ladi.
12 II. BOB. JAVA DASTURLASH TILIDA “KUNDALIK YANGILIKLAR VA
JURNALLAR” NING INTERAKTIV MOBIL ILOVASINI YARATISH  
2.1. Android Studio Java dasturlash tilida ilovaning foydalanuvchi interfeysini
(UI) ishlab chiqish
Mobil ilovani ishlab chiqish ketma ketligi (SDLC) – bu dasturlash loyihasini
boshlashdan   o'chirishgacha,   uni   yaratish,   tuzatish   va   qo'llab-quvvatlash
jarayonlarini   o'z   ichiga   olgan   tizimli   va   tartiblangan   jarayonlarning   umumiy
qo'llanilgan   modelli.   Bu   jarayon,   ilovaning   turini   va   o'lchamini   taqdim   etish,
talablarni   aniqlash,   dizaynni   tuzatish,   dasturlash,   test   qilish,   ishga   tushirish   va
davom   etkazish   jarayonlarini   o'z   ichiga   oladi.   Mobil   ilovani   ishlab   chiqish   ketma
ketligi   quyidagi   bosqichlardan   iborat   bo'ladi:   Talablarni   aniqlash   (Requirements
Analysis): Bu bosqichda, dastur uchun talablarni aniqlash va mustaqil vaqtida qabul
qilish   katta   ahamiyatga   ega.   Foydalanuvchilar   bilan   muloqotlar   o'tkaziladi,   va
ularning talablari va umumiy ish faoliyatlarini tushunish uchun muhim ma'lumotlar
to'plamasi amalga oshiriladi.
Dizayn   (Design):   Bu   bosqichda,   ilova   arxitekturasi,   interfeys,   ma'lumot
bazalari, ishlab chiqish texnologiyalari va boshqa texnik va dizayn qarorlarini qabul
qilishda   fokuslanadi.   Ushbu   bosqich,   loyihani   qanday   boshqarish   va   qanday
o'rganilganligini belgilaydi.
Dasturlash   (Implementation):   Bu   bosqichda,   dizayn   qilingan   loyiha   asosida
dastur   tuziladi.   Bu   qadamda,   yozuvchilar   ilovani   yaratishda   xizmat   qiladigan
dasturlash tillarini (masalan, Java, Python, Swift) ishlatishadi.
Test   qilish   (Testing):   Xato   va   kamchiliklarni   topish   uchun   loyiha   sinovdan
o'tkaziladi.   Bu   bosqichda   xato   qarorlar,   amaliyot   xatoliklari   va   boshqa   potentsial
muammo va xatoliklar aniqlanadi va tuzatiladi.
Ishga   tushirish   (Deployment):   Ilova   mavjud   bo'lgan   tarmoqda   yoki
platformada   ishga   tushiriladi.   Bu   bosqichda,   ilovani   foydalanuvchilarga   yuklab
olish,   qo'llab-quvvat   qilish   va   to'liq   ishga   tushirish   lozim   bo'lgan   barcha
qo'llanmalar tuzatiladi.
13 Davom   etkazish   va   ta'minlash   (Maintenance   and   Support):   Ilova   ishga
tushirildikdan   so'ng,   uni   doimiy   ravishda   ta'minlash   va   yanada   rivojlantirishning
qaror qilinadi. Foydalanuvchilardan kelib chiqadigan talablarga javob bermak, xato
va   muammolarni   tez-tez   bartaraf   etish   va   ilovani   so'nggi   xususiyatlar   bilan
yangilash kabi mashg'ulotlar shu bosqichga kiradi.
Bu bosqichlar har bir loyiha uchun mos ravishda bo'lmay, lekin ularga amal
qilish dastur ishlab chiqishni rivojlantirish uchun katta ta'sir ko'rsatadi.
2.1.1-rasm.  Qisqacha yangilikning ustiga bosganda yangilikning to’liq ko’rinishi
uchun oyna tuzilishi.
2.1.1-rasmda   foydalanuvchi   qisqacha   yangilikning   ustiga   bosganda
yangilikning   batafsil   ko’rinishi   va   qachon   e’lon   qilingan   yangilik   ekanligini
ko’rsatadi.
2.1.2-rasmda   Kategoriya ilovalari foydalanuvchilarga ma'lum bir mavzu yoki
mahsulotlar to'plamini tartibga solish va ularga tez va oson kirish imkonini 
beradigan dasturlar hisoblanadi. Bu turdagi ilovalar ko'pincha do'konlar, axborot 
resurslari, ta'lim platformalari va boshqa ko'plab sohalarda ishlatiladi. Masalan, 
oziq-ovqat do'konlari ilovalari, yangiliklar ilovalari, ta'lim materiallari ilovalari va 
boshqalar.  Ilovada katagoriyasida BIZNES, O’YIN-KULGI, HARBIY, 
SALOMATLIK, FAN, SPORT, TEXNOLOGIYA lar qatnashgan.
14 Qiduruv tizimi- android ilovalarda qidiruv tizimini yaratish 
foydalanuvchilarga ma'lumotlarni tez va samarali topishga imkon beradi. Qidiruv 
tizimi odatda qidiruv paneli, qidiruv natijalarini ko'rsatish va natijalarni filtrlash 
funksiyalarini o'z ichiga oladi.
Ilovada yangiliklarni qidiruv funksiyasi qo’shilgan bunda kerakli bo’lgan 
yangilklarni qidirish osonroq va tezroq bo’ladi.
2.1.3-rasmdagi   Sarlavha   —   gazeta   sarlavhalarida   ishlatiladigan   yangiliklar
yozish   uslubining   qisqartirilgan   shakli.   Joy   cheklanganligi   sababli,   sarlavhalar
maxsus   sintaktik   konventsiyalardan   foydalangan   holda   siqilgan   telegraf   uslubida
yoziladi jumladan: „To be“ fe lining shakllari  va artikllari ( a, an, the)  odatda olibʼ
tashlanadi.
Ilovada sarlavha ro’yxat elementlarining tuzilishi yangilik haqidagi qisqacha
ma’lumot, rasm va ma’lumot tegishli bo’lgan gazeta yoki sayt nomi qatnashgan.
2.1.2-rasm. Katagoriya, qiduruv tizimi va yangiliklar qatori sxemasi.
15 2.1.3-rasm. Sarlavha ro’yxat elementlari
2.1.4-rasmdagi     Ilova   ikonkasi   (app   icon)   Android   ilovalari   uchun   juda
muhim   element   hisoblanadi,   chunki   u   foydalanuvchilarga   ilovani   tanib   olish   va
unga   kirishni   osonlashtiradi.  Android   Studio   va   VectorDrawable   yordamida   ilova
ikonkasini yaratish va sozlash jarayoni amalga oshiriladi.
2.1.4-rasm. Ilova icon ni
16 2.1.5-rasm. Ilovaga nom berib oldim “Kun yangiliklari”
2.1.6-rasm. Kategoriyalar kirish yani Button_click xossasi
17 2.2. Mobil ilovaning ishlashi bo'yicha tafsilotlar
2.2.1-rasmlar. Asosiy va kategoriya oynalari.
Yuqoridagi   oynada   ilovaga   kirgandagi   holat   bu   yerda   7ta   katagoriyalar
mavjud   ( BIZNES,   O’YIN-KULGI,   HARBIY,   SALOMATLIK,   FAN,   SPORT,
TEXNOLOGIYA),   qiduruv   tizimi   bu   yerda   kerakli   yangiliklarni   qidirishni
osonlashtiradi va qisqa yangiliklar ro’yxati bor. 
18            
2.2.2-2.2.3-rasmlar   yangilklar   qiduruv   tizimiga   ma’lumot   kiritib   yangiliklar
orasidan izlab ko’rish jarayoni.
19 XULOSA
Mobil   qurilmalar   sonining   hozirgi   kundagi   keng   suratlarda   o’sib   borishi,
ayniqsa,   Android   operatsion   tizimida   ishlovchi   smartfon   va   qurilmalar   jahon
bozorining   katta   qismini   egallayotgani,   mobil   ilovalarga   bo’lgan   talabga   ham
proportsionaldir. Shuningdek, odamlar o’z muammolarini smartfonlarda hal qilishga
o’rganmoqda, masalan onlayn haridlardan tortib, virtual o’yinlar va tabriklargacha. 
Kurs ishinini  yaratish davomida mobil  ilovalar yaratish uchun zarur bo‘lgan
dasturlarni   o‘rganib  chiqdim   va  mavzu   yuzasidan   amaliy  izlanish   olib   bordim.  Bu
haqiqat,   mobil   qurilmalar   uchun   dasturlarni   yaratish   web   dasturlarini   yaratishga
nisbatan ancha  murakkab  hisoblanadi. Shu sababli  bu mobil  ilovani  ishlab chiqish
davomida   ko‘pgina   dasturlarni   o‘rganib   chiqdim.   Qaysi   dastur   orqali   mobil   ilova
ishlab chiqish qulay va soddalik vujudga keltirish haqida fikr bildiradigan bo‘lsam
bu java va kotlin dasturlash tillari. Shu sababli  mobil  ilovani  java dasturlash tilida
yaratdim. 
Kundalik   yangiliklar   va   jurnallar   mobil   ilovasini   ishlab   chiqish   davomida
sohaga   oid   bilimlarni   o‘rgandim.  Oddiygina   ko‘ringan   bu  ilova   yaratish   juda   ko‘p
ma‘lumot   talab   qilar   ekan.   Shu   bois   internet   orqali   mashhur   ilovalarning
tashkilotlarini   o‘rganib   chiqdim.   Ulardan   namuna   sifatida   va   o‘z   yangiliklarimni
qo‘shgan holda ilovamni yaratdim.
Men   duch   kelgan   eng   katta   qiyinchilikdan   biri   bu   ilovani   imkoniyatlarini
oshirish   maqsadida   turli   dasturlash   tillarini   sinxronizatsiya   qilish   jarayoni   bo’ldi.
Shu sababli ilovani faqat bir dasturlash tilida javada qildim .
20 FOYDALANILGAN ADABIYOTLAR
1.   Sh.Mirziyoyev   Buyuk   kelajagimizni   mard   va   olijanob   xalqimiz   bilan   birga
quramiz. Toshkent “O zbekiston” 2017. 488 b.ʻ
2. Head   First   Java:   A   Brain-Friendly   Guide   3rd   Edition   By   Kathy
Sierra   (Author),   Bert Bates   (Author),   Trisha Gee   (Author) 25b.
3.   "Eclipse OpenJ9 v0.41.0" . 21 November 2023 . Retrieved   26 November   2023 .
4. "openj9/LICENSE   at   openj9-0.24.0   ·   eclipse/openj9" .   GitHub .   Retrieved   6
March   2021 .
5.   Leonardo Zanivan (7 February 2018).   "New Open Source JVM optimized for
Cloud and Microservices" .   medium.
6.Holger   Voormann   (14   March   2018).   "Hello   OpenJ9   on   Windows,   I   Didn't
Expect You So Soon!" .   DZone.
7.   David   Rubinstein   (20   September   2017).   "IBM   releases   WebSphere   Liberty
code to open source" .   SD Times.
8.   Ronald   Servant   (18   September   2017).   "How   did   the   J9   in   OpenJ9   get   its
name" .   medium.
INTERNET MANZILLARI
1. https://en.wikipedia.org/wiki/Android_Studio
2. https://developer.android.com/build/jdks
3.  https://www.ibm.com/topics/java
21

Kundalik yangiliklar va jurnallar MUNDARIJA KIRISH ...................................................................................................................... 2 I. BOB. ANDROID STUDIO VA JAVA DASTURLASH TILI VA UNING IMKONIYATLARI. .................................................................................................. 4 1.1 Android va Java dasturlash tili va uning hozirgi kundagi o’rni. ........................... 4 1.2 Androidning asosiy va qo’shimcha komponentlari. Eng ko’p foydalaniladigan komponentlar va freymvorklar. ................................................................................... 8 II. BOB. JAVA DASTURLASH TILIDA “KUNDALIK YANGILIKLAR VA JURNALLAR” NING INTERAKTIV MOBIL ILOVASINI YARATISH ........ 13 2.1. Android Studio Java dasturlash tilida ilovaning foydalanuvchi interfeysini (UI) ishlab chiqish ............................................................................................................. 13 2.2. Mobil ilovaning ishlashi bo'yicha tafsilotlar ...................................................... 18 XULOSA .................................................................................................................. 20 FOYDALANILGAN ADABIYOTLAR ................................................................ 21 1

KIRISH Mavzuning maqsad va vazifalari : “ Kundalik yangiliklar va jurnallar ” mobil ilovasini yaratishning asosiy maqsadi va vazifalari quyidagilardir : “ Kundalik yangiliklar va jurnallar ” mobil ilovasi yaratish uchun maqsad va vazifalarni boshqarish asosiy qadam bo ' lib , bu dasturning muqova va foydalanuvchilar uchun yaxshi tajribani ta ' minlash maqsadida amalga oshiriladi . Quyidagi vazifalar supermarket uchun mobil ilova yaratishda muhim bo'lgan maqsadlardan ba'zi o'rin olganidek: Xizmatlar va qulayliklar: Foydalanuvchilar ushbu ilova orqali turli xil mahsulotlarni sotib olishi va yetkazib berish xizmatidan unumli foydalanishdir. Mahsulotlar to'lovi va buyurtma hisobotlari: To'lov tizimi va moliyaviy operatsiyalarni boshqarish. Foydalanuvchilar to'lovlarini bajarishlari va to'lovlarini nazorat qilishlari mumkin bo'lishi kerak. Foydalanuvchilar bilan aloqalar: Foydalanuvchilar bilan interaktiv aloqalar o'rnating. Shikoyatlar, so'rovnoma, sharhlar va tajribalarni qo'llash imkoniyatini yaratish. Ma'lumotlar bazasi va statistika: Foydalanuvchilar aktivliklarini monitoring qilish, ularning ma'lumotlarini saqlash va saytni yanada yaxshi boshqarish uchun statistik ma'lumotlarni tahlil qilish. Kurs ishi tuzilmasining tavsifi : Mazkur tadqiqot ishi kirish, tanlangan ob’ektlar va tadqiqot usullari, kurs ishi boblari, xulosa hamda foydalanilgan adabiyotlar ro‘yxatidan iboratdir. Kurs ishining kirish qismida qaralayotgan ishning dolzarbligi, ishning maqsadi, ishning ilmiyligi, tadqiqotning amaliy ahamiyati va kurs ishining tuzilishi to‘g‘risidagi umumiy ma’lumotlar keltirilgan. Kurs ishining tanlangan ob’ektlar va tadqiqot usullari bo‘limida tadqiqot olib borilayotgan ob’ekt haqida umumiy ma’lumotlar berilgan. Shu bilan birga tadqiqot ob’ektini o‘rganish usullari va qo‘yilgan maqsadga erishish uchun kerak bo‘ladigan qurilma va dasturiy ta’minotlar, ishni amalga oshirish usullari haqida umumiy ma’lumotlar keltiriladi. 2

Tadqiqot ishning birinchi bobida Java dasturlash tili va turli framevorklar bilan ishlash, ulardan foydalanish haqida ma’lumotlar keltirilgan. Kurs ishining ikkinchi bobida supermarket mobil ilovani kuzatuvchilar foydalanishi uchun kerak buladigan bo`limlari va imkoniyatlar haqida ma`lumotlar berib o’tilgan. Kurs ishining xulosa qismida bajarilgan ishning amaliyotga qo‘llanilishi natijasida kelib chiqadigan xulosalar va tavsiyalar keltiriladi. Kurs ishining so‘ngida esa foydalanilgan adabiyotlar, elektron kitoblar ro‘yxatlari keltirilgan. Kurs ishining tuzilishi : Kurs ishi kirish qismi, mundarija, xulosa va ilmiy- amaliy tavsiyalar hamda foydalangan adabiyotlar ro‘yxatidan iborat. Men “Kundalik yangiliklar va jurnallar” mobil ilovasini java dasturlash tilining keng imkoniyatlaridan foydalangan holda ushbu mobil ilovani ishlab chiqishni o’z oldimga maqsad qilib oldim. Bu haqidagi mobil ilovalar ko’p bulsada bazi foydalanuvchilar mobil ilovalarni ko’p imkoniyatlaridan foydalana olishmaydi hamda tezkor yangiliklarni o’tkazib yuborishadi. Men esa bu mobil ilovani barcha osongina foydalana olishi uchun oddiy va soda ko’rinishda ishlab chiqishga qaror qildim Ushbu mobil ilova insonlar uchun masofadan turib xarid qiladi va yetkazib berish xizmatidan foydalanadi va bu orqali ularning vaqti tejaladi va masofadan turib ishonarli mahsulotlarni xarid qiladi. 3

I. BOB. ANDROID STUDIO VA JAVA DASTURLASH TILI VA UNING IMKONIYATLARI. 1.1 Android va Java dasturlash tili va uning hozirgi kundagi o’rni. Android operatsion tizimi Google kompaniyasi tomonidan yaratilgan mobil OS hisoblanadi. Bu tizim Linux kernel ning modifikatsiyalangan versiyasi asosida qurilgan bo’lib, asosan touchscreen ya’ni sensorli ekranda boshqarish uchun ishlab chiqilgan. Masalan smartfonlar, planshetlar, aqlli soatlar va hokazo. Shuningdek, Google korporatsiyasi, Android tizimini Android TV lar, Android Auto avtomobillari, Wear OS soatlar va boshqa shu kabi qurilmalar uchun moslashtirilgan interfeysga ega tizim versiyalarini yaratib kelmoqda. Android turli xil variantlari o’yin konsollari, raqamli video kameralar, kompyuterlar va boshqa elektron qurilmalar uchun ham mavjud. Shu bilan birga Android tizimi Google tomonidan yaratilgan xususiy dasturiy to’plamga ega. Ular Google Mobile Services (GMS) deb nomlanadi. Bu paket dasturlar to’plami juda ko’p qurilmalarga o’rnatilgan bo’lib, Google Chrome web brouzeri, Google Search qidiruv ilovasi, Gmail pochta ilovasi va shuningdek yangilikla va raqamli distributiv platforma Google Play ni o’z ichida oladi. Android 2011-yildan beri dunyoda eng yaxshi sotiladigan smartfonlar va 2013-yildan boshlab eng ko’p sotilgan planshetlar operatsion tizimi hisoblanadi. 2017-yil may oyiga ko’ra oylik aktiv foydalanuvchilar soni ikki mlrd. dan ziyod operatsion tizim va 2018-yil dekabr oyidan Google Play ilovalar 2.6 milliondan ortiq ilovalar dasturchilar tomonidan joylashtirilgan. Tizim interfeysi asosi to’g’ridan-to’g’ri boshqaruv (direct manipulation) asosida tegish harakatlaridan (touch actions) foydalangan holda, real harakatlarni amalgan oshirish imkonini beradi. Masalan, surish, chertish, tegish, ushlab turish orqali obyektlarni boshqarish, virtual klaviatura va shu kabilarni o’z ichiga oladi. Ilovalar qurilma imkoniyatlarini kengaytiradi, ular Android Software Development Kit (SKD) va Java dasturlash tili yordamida yoziladi. Shuningdek tizim Go dasturlash tilini ham qo’llab-quvvatlaydi, garchi ilovalar interfeyslariga cheklovlar 4

qo’yilgan bo’lsa ham. 2017-yil may oyida Google Android ilovalarni ishlab chiqish uchun Kotlin dasturlash tilini qo’llab-quvvatlashini e`lon qildi. Android Studio Android Studio JetBrains ning IntelliJ IDEA dasturiy loyihasi bo’lib, Google ning Android operatsion tizimi uchun dasturiy taminot yaratish uchun mo’ljallangan rasmiy IDE (Integrated Development Environment) si hisoblanadi. Ushbu dasturlash muhiti macOs, Windows va Linux operatsion tizimlari uchun mo’ljallangan versiyalari mavjud. Android uchun avvalgi alternativ dasturiy muhit Eclipse Android Development Tools (ADT) o’rnini xozirgi kunga kelib aynan Android Studio egallagan. Android Studio 2013-yil, 16-mayda Google I/O konferensiyasida e`lon qilingan. Eng birinchi versiyasi 0.1 dan boshlangan va 2014-yil iyunda 0.8-beta versiyasi chiqarilgan. Muqobil 1.0 versiyasi 2014-yil dekabr oyida taqdim qilingan. Xususiyatlari • Gradle-based qurishni qo’llab-quvvatlash • Android-maxsus kodni refaktrolash va tuzatish • Lint-tools unumdorlikni oshirish, barqarorlashtirish, versiyalar nazorati va boshqa muammolarni yechish • ProGuard integratsiyasi va ilovani (app-signing) identifikatsiya qilish • Template-based umumiy Android dizaynlarni va komponentlarni yaratish • Drag and drop orqali komponentlarni boshqarish imkoniga ega bo’lgan va ko’p ekranlarda ilovaning ko’rinishini ko’rish qobiliyatiga ega layout tahrirlovchi. • Android Wear uchun ilovalarni yaratishni qo’llab-quvvatlash • Google Could Platform uchun qurishni qo’llab-quvvatlash, Firebase Could Messaging va Google App Engine larni integratsiya qilish imkoniyati • Android Virtual Device (AVD Emulator) ilovalarni virtual debug qilish Android Studio IntelliJ ning deyarli barcha dasturlash tillarida ishlay oladi. Masalan, Java, C++ va boshqa kengaytirilgan tillar, Go kabilar. Android ning 3.0 versiyasidan boshlab Kotlin dasturlash tili kiritildi. Shuningdek, Java 7, Java 8 va Java 9 ning bazi xususiyatlaridan foydalanadi. Java 5