Weather Project

_____________bajardi
(imzo)
|
|
______________ ball bilan
|
_____________ guruh talabasi
_________________________
(f.i.o)
|
|
______________ qabul qilindi
(imzo)
______________________________
(f.i.o)
|
“___” ______________ 20__ y
|
|
. “___” ______________ 20__ y.
|
Komissiya a’zolari:
|
|
|
______________ qabul qilindi
(imzo)
|
|
______________ qabul qilindi
(imzo)
|
|
|
______________ qabul qilindi
(imzo)
|
“___” ______________ 20__ y
|
|
. “___” ______________ 20__ y.
|
“___” ______________ 20__ yil.
KIRISH 7
9
1.1-rasm. Mijoz – server arxitekturasi 9
MASALANING QO‘YILISHI 10
API (application programming interface)- boshqa biror bir ilova ikkinchisi bilan to'g'ridan-to'g'ri muloqot qilishi uchun yaratilgan protseduralar, funksiyalar va klasslardan tashkil topgan katta to'plam. API ilovaning boshqa platformalarda ishlab chiqish jarayonini sezilarli darajada tezlashtiradi. Har bir katta loyihaning o'z APIsi bo'ladi. Ajoyib funksionalga ega loyihalarda bir emas bir-nechta APIdan foydalanilganligiga guvoh bo'lamiz. Bu esa ilovaning samaradorligi hamda funksionalining oshishiga katta hissa qo'shadi. Biz bilgan APIlarning ko'pgina qismi public API hisoblanadi ya'ni bu APIdan barcha foydalanishi mumkin. Katta kompaniyalar, ijtimoiy tarmoqlar taqdim etgan APIni ham public API deb atashimiz mumkin. Sizning loyihangiz spotify bilan ma'lumot almashib ishlasa yoki uning xizmatlaridan foydalansa siz unga o'xshash servisni qaytadan qurishingiz shart emas. Shunchaki uning APIsidan foydalaniladi. Veb servis APIlarida ma'lumotlar formatining asosan ikki turidan foydalanishadi: Json & XML. Bular ma'lumotlarni qabul qilish hamda yuborish uchun umumiy format ya'ni ma'lumot formati deb yuritiladi. Qisqa qilib aytganda serverlar o'rtasida ma'lumot almashish uchun juda ham qo'l keladi. JSON (JavaScript Object Notation) bu yuqorida aytib o'tganimdek ma'lumotlar almashinishi uchun ishlatiladigan ma'lumot formati bo'lib, javascript uchun yaratilgan va aynan shu tilda boshqalarga nisbatan kengroq foydalanadi. Ammo boshqa tillarda ham faol ravishda qo'llanilib kelinmoqda. Sintaksisini bir qarashdayoq tushunib olish mumkin. XML - Extensible Markup Language (HTML bilan o'xshash tarzda yozilgan). Vazifasi xuddi json kabi ma'lumotlar tashish, tuzilishini saqlash va ta'riflashdan iborat. Sodda qilib aytganda ular oddiy ma'lumot formati. APIning asosiy maqsadlaridan biri tizimning
ichki detallarini yashirib, dasturchi uchun kerak boʻladigan qismlarini ochiqlash va ichki detallar oʻzgargan taqdirda ham ularni izchil saqlashdan iboratdir. API maʼlum bir tizim juftligi uchun moslashtirilgan, yoki, koʻplab tizimlar oʻrtasida oʻzaro ishlash imkonini beruvchi umumiy standart tarzida ishlab chiqilgan boʻlishi mumkin. APIlarning bir qancha,
jumladan, dasturlash tillari, dasturiy ta'minot kutubxonalari, operatsion tizimlar va kompyuter hardveyri uchun ishlatilinadigan turlari mavjud. API atamasi 1960-1970-yillarda paydo boʻlgan boʻlsa ham, ushbu texnologiyaning tarixi 1940-yillarga borib taqaladi. API atamasining hozirgi kundagi qoʻllanilishi odatda internetga ulangan kompyuterlar oʻrtasida aloqa oʻrnatish imkonini beruvchi veb-APIlarga ishora qiladi. APIlarning rivojlanishi mikroservislarning mashhurlikka erishishiga ham sababchi boʻlgan. 15
ASOSIY QISM 17
1. Dasturning kodlari bilan tanishish 17
2. Dasturning ishlashi 24
3. Dasturning afzallik va kamchiliklari 26
XULOSA 30
API So'rovi: “getResults” funksiyasi orqali foydalanuvchining kiritgan shahar nomi asosida OpenWeatherMap API ga so'rov jo'natiladi. Ma'lumotlar JSON formatida olinadi. 30
Natijalarni Ko'rsatish: “displayResults” funksiyasi olingan ma'lumotlarni konsolga chiqaradi. Foydalanuvchiga ob-havo ma'lumotlarini
kiritgan shahar nomi, harorat, namlik, shamol tezligi va ob-havo holatini HTML elementlar orqali ko'rsatish uchun ishlatiladi. 30
Ob-havo Holatiga Qarab Rasm Tanlash: “cloudIcons” funksiyasi olingan ob-havo ma'lumotlariga qarab mos rasmni “weatherIcon” elementiga joylashadi. Bu qismi o'zgartirib, yaratilgan rasmning sa'y-harakat qilayotgan qismini (gif, svg, yoki boshqa formatda) ishlatish mumkin. 30
ADABIYOTLAR RO'YXATI 31