10-sinf (Android)
Advanced Android dasturlash
34 hafta102 darshaftasiga 3 dars · 80 daqiqa6 / 34 hafta tayyor
I chorak
1–9-haftalar1hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 1-darsGradle konfiguratsiyasi va build tizimi asoslari: settings.gradle, build.gradle, SDK versiyalari
- 2-darsBuild variantlari va Product Flavors: Debug vs Release, R8 optimallashtirish, BuildConfig
- 3-darsDependency management va versiyalar bilan ishlash: kutubxonalar, repozitoriylar, Version Catalog (TOML)
2hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 4-darsDependency management va ziddiyatlarni hal qilish: tranzitiv bog'liqliklar, exclude, resolutionStrategy
- 5-darsProGuard va R8 yordamida kodni optimallashtirish (1-qism): Shrinking, Obfuscation, Optimization
- 6-darsProGuard va R8 qoidalari bilan ishlash (2-qism): -keep qoidalari, Reflection, mapping.txt
3hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 7-darsGit bilan versiya nazorati asoslari: Git repository, commit, log, .gitignore
- 8-darsGit bilan ishlash amaliyoti: fayllar holati, diff, checkout, reset, revert
- 9-darsGitHub’da loyihalar yaratish va boshqarish: remote repozitoriy, push, pull, issues, README
4hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 10-darsGitLab va Bitbucket’da jamoaviy ish jarayonlari: loyihani klonlash, access va rollar, pipeline
- 11-darsBranch, Merge va Pull Request jarayonlari: feature branching, merge konfliktlari, PR va Code Review
- 12-darsContinuous Integration (CI/CD) tushunchasi: build va test avtomatlashtirish, GitHub Actions
5hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 13-darsbuild.gradle faylining asosiy tuzilmasi va modullararo bog‘lanishi
- 14-darsBuild variantlar (debug, release) va ularning farqi
- 15-darsGradle yordamida kutubxonalarni ulash va versiyalarni boshqarish ko‘nikmasiga ega bo‘ladi;
6hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 16-darsGradle so‘rovlarini (tasks) bajarish va xatoliklarni aniqlashni biladi;
- 17-darsbuild.gradle faylida kutubxonalarni ulash va boshqarishni biladi;
- 18-darsimplementation, api, compileOnly kabi dependency turlarining farqini tushunadi;
7hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 19-darsKutubxona versiyalarini yangilash va moslik muammolarini hal qilish ko‘nikmasiga ega bo‘ladi;
- 20-darsVersiyalarni avtomatik boshqarish va yangilanishni tekshirish usullarini qo‘llay oladi;
- 21-darsR8 ning Android’da standart bo‘lishi, ProGuard’dan farqi va ularning ishlash tamoyillarini biladi;
8hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 22-darsproguard-rules.pro faylida - keep, - dontwarn, sinf/a’zo patternlari bilan ishlashni amaliy qo‘llay oladi;
- 23-darsObfuskatsiya sababli yuzaga keladigan xatolarni aniqlash, mapping.txt orqali stacktrace’ni deobfuskatsiya qilishni biladi;
- 24-darsLoyiha o‘zgarishlarini saqlash, kuzatish va boshqarish jarayonlarini biladi;
9hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 25-dars.gitignore faylini Android loyihasi uchun to‘g‘ri sozlashni o‘rganadi;
- 26-darsTarmoqlar (branch) yaratish, birlashtirish va versiyalarni boshqarish ko‘nikmasiga ega bo‘ladi;
- 27-darsGitHub, GitLab kabi platformalar bilan sinxron ishlashni biladi;
II chorak
10–16-haftalar10hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 28-darsGitHub platformasining maqsadi va imkoniyatlarini tushunadi;
- 29-darsYangi repozitoriya (repository) yaratish va uni lokal loyiha bilan bog‘lashni biladi;
- 30-darsCollaborator qo‘shish, kod sharhlash (pull request) va muhokama (issue) jarayonlarini amaliy bajaradi;
11hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 31-darsGitHub Actions orqali avtomatik build va testlarni sozlash haqida tushuncha hosil qiladi;
- 32-darsJamoaviy loyihalarda kodni saqlash, baham ko‘rish va boshqarish bo‘yicha mustaqil ishlay oladi
- 33-darsGitLab va Bitbucket platformalarining vazifasi va GitHub’dan farqini tushunadi;
12hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 34-darsBranch va merge jarayonlarini jamoaviy muhitda to‘g‘ri tashkil etish ko‘nikmasiga ega bo‘ladi;
- 35-darsMerge Request, Issue Tracker va Pipeline funksiyalarining ishlash tamoyillarini o‘rganadi;
- 36-darsContinuous Integration (CI) va Continuous Deployment (CD) jarayonlarini sozlash haqida tushuncha hosil qiladi;
13hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 37-darsBranch (tarmoq) tushunchasini va uning loyihalarda rolini tushunadi;
- 38-darsYangi branch yaratish, unga o‘tish va o‘zgarishlarni mustaqil tarzda sinovdan o‘tkazishni biladi;
- 39-darsAsosiy tarmoqqa (main/master) o‘zgartirishlarni birlashtirish (merge) jarayonini bajaradi;
14hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 40-darsMerge vaqtida kelib chiqadigan konfliktlarni aniqlash va hal etish ko‘nikmasiga ega bo‘ladi;
- 41-darsKod sharhlari (code review) va tasdiqlash (approve) mexanizmlaridan foydalanishni o‘rganadi;
- 42-darsCI/CD ning dastur ishlab chiqish jarayonini avtomatlashtirishdagi ahamiyatini biladi;
15hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 43-dars.yaml konfiguratsiya fayllarining tuzilishi va bosqichlarini (build, test, deploy) tushunadi;
- 44-darsCD bosqichida ilovani avtomatik tarzda Play Market yoki serverga joylashtirish jarayonini tushunadi;
- 45-darsCI jarayonida xatoliklarni aniqlash, test natijalarini tahlil qilish va avtomatik tuzatish mexanizmlarini biladi;
16hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 46-darsMVVM arxitekturasining maqsadi va uning afzalliklarini tushunadi;
- 47-darsModel, View va ViewModel qatlamlarining vazifalari va o‘zaro aloqasini biladi;
- 48-darsData Binding va LiveData yordamida UI va ma’lumotlar o‘rtasidagi sinxronlashuvni o‘rganadi;
III chorak
17–26-haftalar17hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 49-darsJetpack komponentlari (ViewModel, LiveData, Repository) bilan ishlashni amaliyotda qo‘llay oladi;
- 50-darsMVVM yordamida kodni modulli, testlanadigan va oson kengaytiriladigan shaklda yozishni biladi;
- 51-darsMVI arxitektura naqshining mohiyatini va uni MVVM dan farqlovchi jihatlarni tushunadi;
18hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 52-darsModel, View va Intent qatlamlarining vazifalari va o‘zaro ishlash tamoyillarini biladi;
- 53-darsUI holatini (state) yagona oqim sifatida boshqarish tamoyillarini o‘rganadi;
- 54-darsIntents orqali foydalanuvchi harakatlarini kuzatish va ularni ViewModel yoki Reducer orqali qayta ishlashni biladi;
19hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 55-darsMVI yordamida barqaror va testlanadigan foydalanuvchi interfeysini qurishni o‘rganadi;
- 56-darsMVP arxitektura naqshining mohiyatini va uni MVVM hamda MVI dan farqini tushunadi;
- 57-darsModel, View va Presenter qismlarining vazifalari hamda o‘zaro aloqasini biladi;
20hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 58-darsPresenter orqali foydalanuvchi harakatlarini boshqarish va View bilan ma’lumot almashishni o‘rganadi;
- 59-darsMa’lumotlarni Model qatlamida saqlash va yangilash jarayonlarini amalda qo‘llay oladi;
- 60-darsKichik Android loyihalarida MVP arxitekturasini to‘g‘ri qo‘llay oladi
21hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 61-darsViewModel va LiveData komponentlarining maqsadi va afzalliklarini tushunadi;
- 62-darsLiveData yordamida ma’lumotlar o‘zgarishini real vaqt rejimida kuzatish ko‘nikmasiga ega bo‘ladi;
- 63-darsViewModel va LiveData ni birgalikda qo‘llab, UI va ma’lumotlar sinxronlashuvini ta’minlay oladi;
22hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 64-darsMVVM arxitekturasida ViewModel va LiveData’ni to‘g‘ri joylashtirish hamda amaliy loyihalarda tatbiq etish ko‘nikmasiga ega bo‘ladi
- 65-darsStateFlow va SharedFlow oqimlarining farqi va ularning ishlash tamoyillarini biladi;
- 66-darsCoroutineScope doirasida Flow oqimlarini boshqarish va bekor qilish (cancel) ko‘nikmasiga ega bo‘ladi;
23hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 67-darsSharedFlow orqali bir nechta kuzatuvchilarga (collectors) ma’lumot uzatish jarayonini tushunadi;
- 68-darsemit, collect, replay, subscription kabi asosiy funksiyalarni amalda qo‘llay oladi;
- 69-darsRepository pattern’ning maqsadi va uni MVVM arxitekturadagi o‘rni haqida tushuncha hosil qiladi;
24hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 70-darsDataSource tushunchasini va ma’lumot oqimining (data flow) yo‘nalishini o‘rganadi;
- 71-darsRemote (masofaviy) va Local (mahalliy) manbalar o‘rtasida sinxronlash jarayonini tushunadi;
- 72-darsRepository qatlamida xatoliklarni (Exception Handling) to‘g‘ri boshqarish ko‘nikmasiga ega bo‘ladi;
25hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 73-darsBarqaror, kengaytiriladigan va testlanadigan ma’lumot oqimini loyihalashni o‘rganadi
- 74-darsDastur komponentlari orasidagi bog‘liqlikni kamaytirish va modullilikni oshirishning ahamiyatini biladi;
- 75-darsDagger va Hilt kutubxonalarining ishlash tamoyillari va ularning farqlarini o‘rganadi;
26hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 76-dars@Inject, @Module, @Provides, @Singleton annotatsiyalarining vazifasini biladi;
- 77-darsArxitekturaning asosiy qatlamlari - Presentation, Domain va Data qismlarining vazifalarini biladi;
- 78-darsHar bir qatlamning o‘zaro mustaqilligi va bog‘lanish chegaralarini (boundaries) o‘rganadi;
IV chorak
27–34-haftalar27hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 79-darsUse Case (Interactor) orqali biznes mantiqni alohida boshqarish usulini biladi;
- 80-darsRepository va Entity’lar orqali ma’lumot oqimini qatlamlar orasida to‘g‘ri tashkil eta oladi;
- 81-darsMVVM arxitekturasi asosida ilova modullarini tuzish jarayonini amalda bajaradi;
28hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 82-darsViewModel va LiveData orqali foydalanuvchi ma’lumotlarini boshqarish va saqlashni biladi;
- 83-darsRecyclerView yordamida moliyaviy ma’lumotlarni ro‘yxat ko‘rinishida chiqarish ko‘nikmasiga ega bo‘ladi;
- 84-darsRoom ma’lumotlar bazasidan foydalanib, kiritilgan xarajat va daromadlarni saqlashni o‘rganadi;
29hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 85-darsData Binding orqali interfeys va ma’lumotlar o‘rtasida avtomatik bog‘lanish yaratadi;
- 86-darsSQLite ma’lumotlar bazasining tuzilmasi va ishlash prinsipi haqida tushunchaga ega bo‘ladi;
- 87-darsJadval (table) yaratish va maydonlarga ma’lumot kiritish (INSERT) amallarini bajaradi;
30hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 88-darsSQL buyruqlari yordamida ma’lumotlarni yangilash (UPDATE) va o‘chirish (DELETE)ni bajaradi;
- 89-darsSELECT operatori orqali kerakli yozuvlarni saralab olishni o‘rganadi;
- 90-darsSmart Finance ilovasida xarajatlar ro‘yxatini saqlash uchun SQLite bazasini qo‘llaydi
31hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 91-darsRoom kutubxonasining asosiy komponentlari (Entity, DAO, Database) bilan ishlashni biladi;
- 92-darsORM texnologiyasining SQL kodlarini soddalashtirishdagi afzalliklarini tushunadi;
- 93-darsRoom orqali CRUD (Create, Read, Update, Delete) amallarini bajarishni o‘rganadi;
32hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 94-darsLiveData va ViewModel orqali ma’lumotlarning real vaqt yangilanishini kuzatadi;
- 95-darsSmart Finance ilovasida foydalanuvchi ma’lumotlarini Room orqali saqlaydi va o‘qiydi
- 96-darsRealm ma’lumotlar bazasining tuzilishi va afzalliklarini biladi;
33hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 97-darsRealm orqali offline va online sinxronizatsiyani tashkil etish usullarini o‘rganadi;
- 98-darsModel sinflarini yaratish va ulardan ma’lumot olish jarayonini tushunadi;
- 99-darsMa’lumot o‘zgarishlarini real vaqt rejimida kuzatish uchun Listener mexanizmini qo‘llaydi;
34hafta
I-bob · Android loyihalarini boshqarish va versiya nazorati tizimlari
- 100-darsSmart Finance ilovasida foydalanuvchi tranzaksiyalarini real vaqt rejimida sinxronlashtiradi
- 101-darsFirestore bazasining “collection” va “document” tuzilmasini tushunadi;
- 102-darsCRUD amallarini (create, read, update, delete) Firestore orqali bajaradi;