Yangi Oʻzbekistonni, albatta, yoshlar bilan birga quramiz. 2020-yil yoshlarga


III.BOB. TATBIQ QILISHNI TASHKIL ETISH VA LOYIHA


Download 1.38 Mb.
Pdf ko'rish
bet13/28
Sana10.01.2023
Hajmi1.38 Mb.
#1087113
1   ...   9   10   11   12   13   14   15   16   ...   28
Bog'liq
Adxam Soataliyev BMI65018

III.BOB. TATBIQ QILISHNI TASHKIL ETISH VA LOYIHA 
SAMARADORLIGI 
3.1. Flutter dasturlash tilining afzalliklari va boshqa tillardan ustun jihatlari 
Google 2018-yilda Flutter-ning birinchi barqaror versiyasini chiqarganidan beri ikki 
yildan kamroq vaqt ichida loyiha GitHub-da 109 ming yulduz, 15,4 ming vilka va 21 
870 ta majburiyatga ega bo‘ldi. Google Ads va Google Assistant ilovalarini yaratish 
uchun Flutter-dan foydalanish orqali Flutter yaratuvchilari uni keyingi katta narsaga 
aylantirish uchun jiddiy majburiyat ko‘rsatadilar. eBay, CapitalOne yoki Square kabi 
yirik kompaniyalar Flutter-ni o‘zlarining texnologik stekiga qo‘shishadi. Bu sizga 
sakrash kerak deganimi? Ushbu maqolada biz Flutter SDK-dan biznes nuqtai nazaridan 
foydalanishning ijobiy va salbiy tomonlarini ko‘rib chiqamiz. Biz, shuningdek , 
Proxify-dagi Fullstack dasturchisi Piterning ba'zi fikrlari bilan o‘rtoqlashamiz , u bizga 
dasturchilar Flutterni nima uchun juda yaxshi ko‘rishlarini aytdi. 
Flutter SDK. Flutter - bu ochiq manbali UI dasturiy ta'minot ishlab chiqish 
to‘plami . Reaksiya uslubidagi ramkaga qo‘shimcha ravishda, ushbu asboblar to‘plami 
o‘z ko‘rsatish mexanizmini, tayyor vidjetlarning boy to‘plamini, birlik va integratsiya 
test API'larini, plagin API'larini va ilovalarni yaratish va kompilyatsiya qilish uchun 
buyruq qatorini o‘z ichiga oladi. 
Qisqa Flutter sharhi shuni ko‘rsatadiki, bu React Native va Xamarin kross-platformali 
mobil ilovalarni ishlab chiqish vositalariga yanada kengroq muqobildir . Xuddi boshqa 
yechimlar kabi Flutter ham bitta kod bazasidan Android va iOS ilovalarini yaratishga 
yordam beradi. Uni boshqalardan ajratib turadigan jihati shundaki, u mahalliy UI 
komponentlari ustiga oʻram sifatida ishlamaydi. Buning o‘rniga, u noldan mahalliy 
ko‘rinishdagi UI-ni tortadi. Bu qanday ishlashi haqida tasavvurga ega bo‘lish uchun 
keling, Flutter stekini ko‘rib chiqaylik. 


36 
“Flutter nafaqat React Native-ning raqobatchisi, ya'ni odamlar odatda uni 
taqqoslaydi, balki litsenziyalash tufayli Qt bilan ham. Sony kabi kompaniyalar ushbu 
texnologiya yordamida o‘rnatilgan apparat interfeyslarining keyingi avlodini ishlab 
chiqmoqda. ” – Piter, Fullstack dasturchisi. Flutter UI quruvchisi oʻziga xos 
texnologiya stekiga ega boʻlib, uni boshqa platformalararo ishlab chiqish yechimlaridan 
farq qiladi va uning qotil xususiyatlarini kuchaytiradi. 
Dart dasturlash tili . Flutterning ramkasi ob'ektga yo‘naltirilgan dasturlash tili 
bo‘lgan Dartda yozilgan. Uning sintaksisi intuitiv, ixcham va sodda, bu esa ishlab 
chiquvchilarga kamroq kod bilan ko‘proq narsani qilish imkonini beradi. Bu til umumiy 
maqsadli va veb, mobil va ish stoli ilovalarini yozish uchun mos keladi. Dartda 
yozilgan dasturlar tez va barqaror ishlaydi. 
JIT va AOT kompilyatori . Flutter ilovalarni ishlab chiqish va joylashtirish 
jarayonida dasturlarni kompilyatsiya qilish uchun ikki xil usuldan foydalanadi: Just-In-
Time (JIT) va Ahead of Time (AOT) kompilyatsiyasi. JIT usuli ishlab chiqish 
jarayonini tezlashtiradigan issiq qayta yuklash xususiyatini ta'minlaydi, AOT esa 
Flutter ilovalari chiqarilgandan keyin tez ishga tushirish vaqtlari va barqaror ishlashini 
ta'minlaydi. 
C++ dasturlash tili . Flutter dvigateli C++ tili bilan qurilgan. U tez va samarali 
Dart ish vaqti va kompilyatorini quvvatlantiradi, asosiy API va plaginlarni boshqaradi, 
kodlarni ko‘rsatish uchun grafik kutubxona bilan o‘zaro ishlaydi, fayl va tarmoq 
kiritish-chiqarishni qayta ishlaydi. 
Skia grafik kutubxonasi . Raqobatchilar vositalaridan farqli o‘laroq, Flutter o‘z 
vidjetlarini mustaqil ravishda chizadi. U har bir qurilma bilan birga keladigan 
platformaga xos komponentlarga tayanish o‘rniga foydalanuvchi interfeysini ko‘rsatish 
uchun Skia kutubxonasidan foydalanadi. Bu Flutter ilovalari va mobil platformalar 
o‘rtasidagi aloqani kamaytiradi va har qanday OS versiyasi yoki qurilmada UI buzilishi 
ehtimolini kamaytiradi. 


37 
Flutter stekini va arxitektura xususiyatlarini bilgan holda, siz Flutter o‘z 
muqobillaridan qanday ustun turishi haqida allaqachon tasavvurga ega bo‘lishingiz 
mumkin. Biroq, keling, biznesingiz va ishlab chiqish guruhingiz foyda olishi mumkin 
bo‘lgan har bir xususiyatni kattalashtiraylik. 
Tez va tejamkor rivojlanish . Flutter platformalararo ilovani ishlab chiqish uchun 
ikkita alohida mahalliy ilovani yaratishga qaraganda ikki baravar kamroq ish soatini 
talab qiladi . Boshqa ramkalar ham xuddi shunday va'da qilsa-da, Flutter bilan siz tashqi 
ko‘rinishi va ishlashi mahalliyga juda yaqin bo‘lgan juda ilg‘or MVP olasiz. Tez 
rivojlanish tezligiga tayyor maketlar, shablonlar va vidjetlar yordamida, shuningdek, 
samarali va tez rivojlanish tsikllari orqali erishiladi. 
Og‘riqsiz maxsus dizayn . Flutter noyob va esda qolarli dizaynga ega ilovalar 
yaratish uchun yaxshi tanlovdir. Boshqa kross-platforma yechimlari bilan 
solishtirganda Flutter foydalanuvchi interfeysini jilolash uchun kamroq vaqt talab 
etadi. Boshqa asboblar to‘plamlari bilan bog‘liq muammo shundaki, ular shaxsiy UI 
elementlarini ko‘rsatish uchun iOS va Android platformalarida yuborilgan vidjetlarga 
tayanadi. Bu juda ko‘p moslik muammolarini keltirib chiqaradi va turli OS 
versiyalarida zerikarli sinovlarni talab qiladi. Bundan farqli o‘laroq, Flutter o‘zining 
grafik kutubxonasidan foydalanadi va barcha vidjetlarni mustaqil ravishda taqdim 
etadi. Bu sizga brendga asoslangan dizaynni yaratish va uni iOS va Android bo‘ylab 
baham ko‘rish imkonini beradi, bu esa har ikkala platformada UI buzilishi ehtimolini 
kamaytiradi. 
“Agar siz Swift yoki Java kabi platformaga xos kodlarni ishlatadigan mobil 
ilovani qidirsangiz, men Flutter orqali React Native-ni tavsiya qilaman, chunki ularni 
osongina qo‘shish mumkin va mahalliy API-lardan foydalanish React Native-ga 
qaraganda ancha yaxshi” – Piter, Fullstack dasturchisi 


38 
Ilovaning ajoyib ishlashi . Flutter mobil ilovalari JavaScript ko‘prigiga muhtoj 
bo‘lmasdan, mahalliy tuzilgan kod orqali ishlaydi. Ishlab chiqarishda Dart kodi AOT 
usuli yordamida platformaning mahalliy kodiga kompilyatsiya qilinadi. Bu Flutter 
Android va iOS ilovalari tez ishga tushishini va harakatga boy va moslashtirilgan 
foydalanuvchi interfeysiga ega boʻlishiga qaramay unumdorlik bilan bogʻliq 
muammolar kamroq boʻlishini taʼminlaydi. 
“Flutter Android operatsion tizimida ishlovchi qurilmalar uchun eng koʻp 
qoʻllab-quvvatlanadigan UI tizimiga aylanmoqda, chunki u Google tomonidan ilgari 
surilgan va mahalliy unumdorlikka ega platformalararo ilovalar yaratish imkonini 
beradi. Bu axlat yig‘uvchi bilan C++ kabi tez”. – Piter, Fullstack dasturchisi 
Innovatsion va istiqbolli texnologiya . Flutter SDK har chorakda barqarorlik va 
unumdorlikni oshirish va yangi xususiyatlarni chiqarish uchun yangilanadi. Google 
tomonidan boshqariladigan va foydalaniladigan Flutter loyihasi faol yordamga ega. Siz 
uning uzoq umr ko‘rishiga ishonishingiz va u eng so‘nggi Android va iOS 
platformalarining imkoniyatlariga mos kelishiga ishonch hosil qilishingiz mumkin. 
Moslashtirilgan vidjetlar to‘plami . Flutter ramkasi qatlamli tuzilishga ega 
bo‘lib, u animatsiya, imo-ishoralar, vidjetlar va boshqalar uchun alohida 
kutubxonalarni o‘z ichiga oladi. Ramka haqiqatan ham moslashuvchan, chunki uning 
barcha qismlari ixtiyoriy va almashtirilishi mumkin. Bu ishlab chiquvchilarga Material 
Design (Android uchun) va Cupertino (iOS uchun) vidjetlarining tayyor to‘plamlaridan 
foydalanishga hamda Dart yordamida shaxsiy vidjetlarni yozishga imkon beradi. 
“Animatsiyalar yaratish Flutterning haqiqatan ham porlashi. Konteynerni 
jonlantirmoqchimisiz? Faqat AnimatedContainer vidjetidan foydalaning. Murakkab UI 
va qulay foydalanuvchi tajribasiga ega ilovalarni yaratish hech qachon bu qadar oson 
bo‘lmagan. – Piter, Fullstack dasturchisi 
Flutter-da hamma narsa ishlab chiquvchilarga katta ilovalar yaratishni 
osonlashtiradigan vidjetdir. Ular ko‘p harakat qilmasdan barcha vizual, tizimli, 


39 
platformali va interaktiv vidjetlarni birlashtira oladi. Holatga oid va fuqaroligi 
boʻlmagan vidjetlar dasturchilarga holat oʻzgarganda ilovaning qaysi qismlarini qayta 
koʻrsatishi kerakligini aniq nazorat qilish imkonini beradi. 
“Flutter vidjetlari bir-birini o‘rab oladi va qayta tiklanadigan daraxtda tashkil 
etilgan. O‘zgaruvchilar xuddi React-dagi rekvizitlar kabi daraxtga uzatiladi. Fuqaroligi 
boʻlmagan vidjetlar ichki holatni kuzatmaydi, statistik vidjetlar esa kuzatadi. Bu holat 
vidjet holatini oʻrnatish orqali qayta koʻrsatishni ishga tushirishim mumkinligini 
anglatadi. Flutterning biznes mantiqiy komponenti (BLoC) bir-biri bilan aloqada 
bo‘lmagan vidjetlar ichidagi holatga kirish yoki o‘zgartirish imkonini beradi. Har bir 
shtat alohida konteynerda saqlanadi va unga nashr qilish/obuna bo‘lish kabi arxitektura 
bilan kirish mumkin. BLoC nashr qilish va obuna bo‘lish xabar almashish tizimi 
sifatida ishlaydi. Vidjet mavzuga obuna bo‘lishi mumkin va boshqa vidjetlar mavzuni 
nashr etishi mumkin. Shunday qilib, obunachilar mavzu bo‘yicha xabarlarni tinglash 
orqali ular bilan bog‘liq bo‘lmagan vidjetlardan davlatga kirishlari mumkin. – Piter, 
Fullstack dasturchisi. 
Issiq qayta yuklash Flutterning qotil xususiyati boʻlib, ishlab chiquvchilarga 
emulyatorlar, simulyatorlar va apparatlarda kodga qoʻllagan oʻzgarishlarini bir 
soniyadan kamroq vaqt ichida koʻrish imkonini beradi. Bundan tashqari, Flutterning 
issiq qayta yuklanishi holatga mos keladi. Bu shuni anglatadiki, ishlab chiquvchilar har 
bir qayta yuklashdan keyin bosh ekrandan boshlamasdan, ilovaga chuqur 
joylashtirilgan ekranda tezda takrorlashlari mumkin. Shunday qilib, flutter dasturlash 
ish oqimi sizning jamoangizning mahsuldorligini oshiradi va sizga kechiktirmasdan 
tajriba o‘tkazish imkonini beradi. 
IDE va muharrirlar bilan moslik . Flutter mashhur kod muharrirlari va 
integratsiyalashgan rivojlanish muhiti yechimlari bilan ishlaydi. Ishlab chiquvchilar uni 
Android Studio, IntelliJ IDEA va VS Code-ga plagin sifatida osongina qo‘shishlari 
mumkin. Bu sizning jamoangiz avtomatlashtirish vositalari va tuzatuvchilarga ega 


40 
tanish muharrirlar yordamida kod yozishi mumkinligini anglatadi, bu esa ularning 
mahsuldorligini oshiradi. 
Misollar bilan batafsil hujjatlar . Flutter hujjatlari yaxshi tuzilgan va to‘liq. U 
asosiy foydalanish holatlari va misollar uchun boy, bu esa ishlab chiquvchilarga har 
qanday savollarga javob topishga va qiyinchiliklarni tezda hal qilishga yordam beradi. 
Dasturiy ta'minot paketlari ombori . Dart ilova imkoniyatlarini kengaytirish 
uchun 
dasturiy 
paketlarni 
taqdim 
etadi. Misol 
uchun, 
Firebase 
uchun 
dasturchilaringizga ilovangizni serversiz qilish imkonini beruvchi paketlar va 
smartfonlar uskunasiga (kameralar, batareyalar, GPS) kirish uchun paketlar mavjud. 
“Siz React Native-dan ko‘ra Flutter bilan ko‘proq to‘lov shlyuzlarini birlashtira 
olasiz. Bu Flutter bilan platformaga xos kodni ishlatish qulayligi bilan 
bog‘liq. Aksariyat to‘lov tizimlari provayderlari o‘z kutubxonalarini platformaning ona 
tilida amalga oshiradilar, chunki bu veb-stek bilan ishlashdan ko‘ra xavfsizroqdir. ” – 
Piter, Fullstack dasturchisi 
Avtomatlashtirilgan sinov uchun ramka . U ishlab chiqish va disk raskadrovkani 
tezlashtirish uchun avtomatlashtirilgan blok, vidjet va integratsiya testlarini yozish 
uchun API-larni taqdim etadi. Flutter ishlab chiquvchilari uzluksiz integratsiya 
xizmatlaridan foydalanishlari va kod o‘zgarishlarini kiritishda o‘z testlarini avtomatik 
ravishda bajarishlari mumkin. Bu ularga yangi kod kutilganidek ishlashini va 
xatoliklarni keltirib chiqarmasligini o‘z vaqtida tekshirish imkonini beradi. 
Internet uchun qo‘llab-quvvatlash . Flutter 2021-yil 3-martda 2-versiya 
chiqarilgandan so‘ng ishlab chiqarish sifatli veb-quvvatlashga ega. Bu Flutter 
yordamida SPA va PWA’larni yaratishingiz yoki mavjud Flutter mobil ilovasini Flutter 
2’ga yangilashingiz va uni qayta yozmasdan internetga ko‘chirishingiz mumkin degan 
ma’noni anglatadi. 

Download 1.38 Mb.

Do'stlaringiz bilan baham:
1   ...   9   10   11   12   13   14   15   16   ...   28




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling