# Flutter 7: O'rganish yo'li — manbalar, vositalar va 8 haftalik reja

> **Holat:** 2026-yil sentabr. Tajribali iOS dasturchisi uchun Flutter'ni noldan boshlash shart emas — UIKit va SwiftUI arxitekturasi bo'yicha mavjud tajriba o'rganish vaqtini 3-4 barobarga qisqartiradi. Ushbu yakuniy darsda tekshirilgan rasmiy manbalar, 2026-yilgi eng muhim paketlar ro'yxati, iOS mutaxassisi uchun mo'ljallangan 8 haftalik amaliy reja va yakuniy motivatsiya jamlangan.

## Mundarija

1. [Rasmiy va tavsiya etilgan manbalar](#resources)
2. [Ekotizim paketlari va iOS muqobillari jadvali](#packages)
3. [8 haftalik amaliy o'rganish rejasi](#study-plan)
4. [Reja skripti va konsol natijasi](#script)
5. [Sertifikatlar va kitoblar haqida xolis haqiqat](#certs-books)
6. [Xulosa va kelajak istiqboli](#xulosa)
7. [Manbalar](#manbalar)

---

## 1. Rasmiy va tavsiya etilgan manbalar {#resources}

Flutter o'rganishda uchinchi tomonning eskirgan pullik kurslariga emas, balki Google va sanoat yetakchilarining doimiy yangilanib turuvchi manbalariga tayanish lozim:

### 1.1 Rasmiy Flutter hujjatlari xaritasi (docs.flutter.dev)
Flutter'ning rasmiy hujjatlari juda mukammal yozilgan, ammo unga to'g'ri kirish xaritasini bilish zarur:

- **Apple dasturchilari uchun maxsus qo'llanma:** [Flutter for SwiftUI Developers](https://docs.flutter.dev/get-started/flutter-for/swiftui-devs) (2026-yil 24-avgustda to'liq yangilangan) va [Flutter for UIKit Developers](https://docs.flutter.dev/get-started/flutter-for/uikit-devs).
- **Asinxronlik taqqoslovi:** [Dart and Swift Concurrency](https://docs.flutter.dev/get-started/flutter-for/dart-swift-concurrency) (Swift 6 Task/Actor va Dart Future/Isolate taqqoslanishi).
- **Layout oltin qoidasi:** [Understanding Constraints](https://docs.flutter.dev/ui/layout/constraints) — Flutter'da interfeys qanday chizilishini hal qiluvchi qoida: *"Constraints go down. Sizes go up. Parent sets position."* (Cheklovlar pastga tushadi, o'lchamlar yuqoriga chiqadi, o'rnashuvni ota widget belgilaydi).
- **Rasmiy arxitektura yo'riqnomasi:** [Flutter App Architecture Guide](https://docs.flutter.dev/app-architecture/guide) (2026-yil 5-mayda yangilangan MVVM va Command pattern yo'riqnomasi).
- **Google rasmiy arxitektura namunasi:** [Compass App Repository](https://github.com/flutter/samples/tree/main/compass_app) (Provider, GoRouter, Freezed va Mocktail bilan qurilgan to'liq ishlab chiqarish loyihasi).
- **Profiling va nosozliklarni tuzatish:** [Flutter DevTools](https://docs.flutter.dev/tools/devtools/overview) (xotira, kadrlar va tarmoq trafigini tahlil qilish).
- **AI imkoniyatlari (2026):** [Flutter AI & GenUI](https://docs.flutter.dev/ai/get-started) (2026-yil 14-sentabrda e'lon qilingan Dart/Flutter MCP serveri va GenUI 0.10.4).

### 1.2 2025–2026-yilgi eng sara professional kurslar va darsliklar
Eskirib qolmagan (Dart 3+, Riverpod 2/3, eng yangi Flutter arxitekturasi asosida o'rgatuvchi) TOP kurslar:

1. **🥇 Code With Andrea (Andrea Bizzotto) — Sanoatdagi №1 tanlov:**
   - **Havola:** [codewithandrea.com/courses](https://codewithandrea.com/courses/)
   - **Nega eng yaxshisi?** Andrea o'zi sobiq Senior iOS dasturchi bo'lgan. Uning *Flutter Foundations* va *Flutter in Production* kurslari quruq UI yasash emas, Clean Architecture, Repository Pattern, kesh, oflayn rejim va avtotestlarni professional darajada o'rgatadi. Agar bitta sifatli pullik kurs sotib olmoqchi bo'lsangiz — bu eng to'g'ri sarmoyadir.
2. **🥈 Vandad Nahavandipoor — Senior iOS & Flutter Lead (Bepul masterclass):**
   - **Havola:** [Flutter & Dart Complete Course for Professionals](https://www.youtube.com/watch?v=VPvVD8t02U8) (FreeCodeCamp, 37+ soat)
   - **Nega mos?** O'Reilly muallifi va ko'p yillik mobil arxitektor. Swift/Objective-C tajribasiga ega odamning tushunish tezligiga 100% moslangan.
3. **🥉 Reso Coder — BLoC va Clean Architecture:**
   - **Havola:** [resocoder.com](https://resocoder.com/)
   - **Nega mos?** iOS'dagi TCA (The Composable Architecture) yoki VIPER kabi qat'iy korporativ arxitektura istaganlar uchun Flutter'dagi eng mukammal qo'llanma.

### 1.3 Paketlar bilan ishlash: Package.swift vs pubspec.yaml
Flutter'da barcha kutubxonalar [pub.dev](https://pub.dev) markaziy reyestridan olinadi. 

- **Paket reytingi:** Har bir paket sahifasida **Likes**, **Pub Points** (140/140 bo'lishi kerak) va **Flutter Favorite** nishoniga qarab sifatli paket tanlanadi.
- **CLI orqali o'rnatish:** SwiftPM'dagi Xcode GUI o'rniga, terminalda bitta buyruq bilan o'rnatiladi:
  ```bash
  flutter pub add http flutter_riverpod shared_preferences
  flutter pub get
  ```
- **Fayllar taqqoslovi:** `pubspec.yaml` (xuddi `Package.swift` kabi versiyalar va resurslar ro'yxati) hamda `pubspec.lock` (xuddi `Package.resolved` kabi versiyani qulflovchi fayl).

## 2. Ekotizim paketlari va iOS muqobillari jadvali {#packages}

2026-yil sentabr holatiga ko'ra tekshirilgan va barqaror paketlar:

| Paket nomi | Tasdiqlangan versiya | Vazifasi | iOS ekotizimidagi muqobili |
| :--- | :--- | :--- | :--- |
| **`go_router`** | 18.0.2 | Deklarativ marshrutlash va deep linking | `NavigationStack` / Coordinator |
| **`flutter_riverpod`** | 3.4.3 | Reaktiv va compile-safe holat boshqaruvi | `@Observable` / `@Environment` |
| **`flutter_bloc`** | 9.1.1 | Qat'iy hodisalar oqimiga asoslangan arxitektura | The Composable Architecture (TCA) |
| **`provider`** | 6.1.5+1 | Oddiy DI va holat boshqaruvi | `EnvironmentObject` |
| **`drift`** | 2.35.0 | Tiplangan SQLite relyatsion ma'lumotlar bazasi | GRDB.swift / SwiftData |
| **`shared_preferences`**| 2.5.5 | Kalit-qiymat ko'rinishidagi yengil saqlash | `UserDefaults` |
| **`http`** | 1.6.0 | RESTful API bilan ishlash | `URLSession` |
| **`pigeon`** | 29.0.4 | Swift va Dart o'rtasida tip-xavfsiz ko'prik | Type-safe Bridge generator |
| **`freezed`** | 4.0.2 | Ma'lumot modellari uchun kod generatsiyasi | Swift `struct` / `Codable` |
| **`material_ui`** | 1.5.0 | Mustaqil Material Design 3 komponentlari | — |
| **`cupertino_ui`** | 1.1.1 | Mustaqil Apple uslubidagi interfeys | UIKit / SwiftUI |
| **`home_widget`** | 0.10.0 | iOS asosiy ekran vidjetlariga ma'lumot uzatish | WidgetKit helper |
| **`live_activities`** | 2.6.0 | Dynamic Island va Live Activities boshqaruvi | ActivityKit helper |
| **`mocktail`** | 1.0.4 | Null safety qo'llab-quvvatlovchi test mocklash | Mockingbird / SwiftyMocky |

---

## 3. 8 haftalik amaliy o'rganish rejasi {#study-plan}

Haftasiga 8-10 soat ajratish orqali iOS dasturchisi 2 oyda bozor darajasidagi Flutter mutaxassisiga aylana oladi:

| Hafta | Asosiy mavzu | Maqsad va o'rganiladigan tushunchalar | Haftalik mini-loyiha |
| :---: | :--- | :--- | :--- |
| **1** | **Dart tili va OOP** | Sound Null Safety, Records, Sealed classes, Pattern matching, Mixins ([/ios-lessons/flutter-dart-for-swift](/ios-lessons/flutter-dart-for-swift)) | Konsol valyuta konvertori (JSON parslash bilan) |
| **2** | **Widgetlar va Layout** | StatelessWidget, StatefulWidget, Row, Column, Stack, ListView.builder ([/ios-lessons/flutter-widgets](/ios-lessons/flutter-widgets)) | Shaxsiy rezyume va portfolio ilovasi |
| **3** | **Navigatsiya & GoRouter** | Marshrutlar parametrlari, ShellRoute, TabBar integratsiyasi | Ko'p ekranli mahsulotlar katalogi |
| **4** | **REST API & Tarmoq** | `package:http`, FutureBuilder, xatolarni ushlash va modellar | Jonli ob-havo yoki valyuta kursi ilovasi |
| **5** | **State: Riverpod yoki BLoC** | NotifierProvider, BlocBuilder, MVVM qatlamlari ([/ios-lessons/flutter-architecture](/ios-lessons/flutter-architecture)) | Savat va saralash imkoniyatiga ega E-Commerce ilovasi |
| **6** | **Mahalliy xotira (Drift)** | Drift bilan SQL jadvallar yaratish, SharedPreferences sozlamalari | Oflayn rejimda to'liq ishlovchi qaydlar (Notes) ilovasi |
| **7** | **Platform Channels & Swift** | MethodChannel, Pigeon 29, UIDevice va Swift 6 xavfsizligi ([/ios-lessons/flutter-ios-integration](/ios-lessons/flutter-ios-integration)) | Swift'dagi CoreMotion datchiklarini Flutter'da ko'rsatish |
| **8** | **Testlar, CI/CD va Reliz** | Widget testlar, `flutter build ipa`, App Store Connect va TestFlight | Tayyor mobil ilovani App Store sinoviga chiqarish |

---

## 4. Reja skripti va konsol natijasi {#script}

Quyidagi dastur 8 haftalik o'quv rejasini tartibli konsol formatida chop etadi:

```dart
void main() {
  final weeks = [
    '1. Dart tili va OOP',
    '2. Widgetlar va SwiftUI',
    '3. Navigatsiya (GoRouter)',
    '4. REST API (http)',
    '5. State Management (Riverpod)',
    '6. Mahalliy xotira (Drift)',
    '7. Platform Channels & Pigeon',
    '8. Reliz va App Store',
  ];

  print('iOS dasturchisi uchun 8 haftalik reja:');
  for (final w in weeks) {
    print('  $w');
  }
}
```

Dastur natijasi:
```text
iOS dasturchisi uchun 8 haftalik reja:
  1. Dart tili va OOP
  2. Widgetlar va SwiftUI
  3. Navigatsiya (GoRouter)
  4. REST API (http)
  5. State Management (Riverpod)
  6. Mahalliy xotira (Drift)
  7. Platform Channels & Pigeon
  8. Reliz va App Store
```

---

## 5. Sertifikatlar va kitoblar haqida xolis haqiqat {#certs-books}

- **Rasmiy sertifikat:** 2026-yil sentabr holatiga ko'ra **Google yoki Flutter jamoasi tomonidan taqdim etiladigan rasmiy davlat yoki xalqaro sertifikat mavjud emas (topilmadi)**. Internetdagi turli platformalarning sertifikatlari faqat kursni ko'rganlikni bildiradi va ish beruvchi oldida jiddiy vaznga ega emas. Asosiy ko'rsatkich — GitHub'dagi toza kod va App Store'dagi real ilovalardir.
- **Kitoblar holati:** Masalan, Kodeco tomonidan chiqarilgan mashhur *"Flutter Apprentice"* (v4.0) kitobi 2024-yil 21-fevralda chop etilgan bo'lib, unda Flutter 3.16.9 versiyasi ishlatilgan. Narxi $59.99 bo'lishiga qaramay, 2026-yilgi SwiftPM, Impeller va Material/Cupertino decoupling o'zgarishlarini qamrab olmagani sababli eskirgan hisoblanadi.
- **Versiyalar nazorati (FVM):** Turli loyihalarda turli Flutter versiyalari bilan ishlash uchun hamjamiyat tomonidan yaratilgan **FVM (Flutter Version Management: [fvm.app](https://fvm.app))** vositasidan foydalanish tavsiya etiladi.

---

## 6. Xulosa va kelajak istiqboli {#xulosa}

- Flutter 2026-yilda barqaror rivojlanayotgan, Impeller va SwiftPM bilan to'liq qurollangan yetuk ekotizimdir.
- iOS dasturchisi sifatida Flutter o'rganish sizni nativ bilimlardan mahrum qilmaydi, aksincha — murakkab vidjetlar va platforma ko'priklarida sizni boshqa dasturchilardan ajratib turuvchi kuchli mutaxassisga aylantiradi.
- 8 haftalik tizimli amaliyot orqali yagona kod bazasi bilan ham App Store, ham Google Play bozoriga to'liq chiqish imkoniyati paydo bo'ladi.

---

## Manbalar {#manbalar}

1. [Flutter Learning Pathway](https://docs.flutter.dev/learn/pathway)
2. [Flutter for SwiftUI Developers](https://docs.flutter.dev/get-started/flutter-for/swiftui-devs)
3. [Dart Language Tour](https://dart.dev/language)
4. [Flutter App Architecture Guide](https://docs.flutter.dev/app-architecture/guide)
5. [Compass Sample Application](https://github.com/flutter/samples/tree/main/compass_app)
6. [Flutter DevTools Guide](https://docs.flutter.dev/tools/devtools/overview)
7. [FVM — Flutter Version Management](https://fvm.app)
