English
Open in Telegram

Post #ARCH-7 MVC, MVP, MVVM, MVI — farqi nimada?

30 September 2026
F
Flutter Dev Talk
#ARCH-7 MVC, MVP, MVVM, MVI — farqi nimada? Ko'pchilik eshitadigan lekin ko'pincha farqini bilmaydiganlar patternlar, bugungi post ularni tushunish uchun ancha foydali bo'ladi degan umiddamn. Bu patternlarning asosiy maqsadi bir xil: UI va logic orasidagi mas’uliyatni to‘g‘ri ajratish. Farqi — ular qanday aloqa qilishida. MVC — Model, View, Controller View → Controller → Model Controller user actionlarini qabul qiladi va Model bilan ishlaydi. Oddiy loyihalarda tushunarli, lekin murakkab UI’da Controller kattalashib ketishi mumkin. MVP — Model, View, Presenter View → Presenter → Model ↓ View Presenter logicni boshqaradi va View’ga showLoading(), showError() kabi buyruqlar beradi. Kamchiligi — Presenter View bilan kuchliroq bog‘lanishi mumkin. MVVM — Model, View, ViewModel View → ViewModel ↓ State ↓ View ViewModel View’ga nima qilishni buyurmaydi. U state beradi, View esa state’ni kuzatadi. Flutter’da Cubit/BLoC + state bilan ko‘p hollarda shunga yaqin yondashuv quriladi. MVI — Model, View, Intent Intent → Logic → State → View ↑ │ └─────────────────────┘ Asosiy g‘oya — Unidirectional Data Flow. Event keladi → yangi state hosil bo‘ladi → UI state asosida render qilinadi. Masalan: PayPressed ↓ Processing ↓ Success / Failure ↓ UI 💡 Muhim: BLoC ishlatish avtomatik ravishda MVI yoki Clean Architecture degani emas. Patternni package emas, responsibility va data flow belgilaydi. Qisqacha: MVC → Controller boshqaradi MVP → Presenter View'ga buyruq beradi MVVM → View state'ni kuzatadi MVI → Intent → State → View oqimi Xulosa: Pattern tanlashda “qaysi biri eng zo‘r?” emas, loyiha murakkabligi uchun qaysi biri yetarli? degan savol muhim. @flutterDevTalk
131 ·

Nearby in the feed

FFlutter Dev TalkEndi esa o'zim bilan bo'lgan tajriba va xatolarni bo'lishaman. Boshida UIC groupda ishlaganimda TDD(aniqroq aytganda testsiz DD 😅, hozir o'ylasam faqatgina papkFFlutter Dev Talk💬 Let's talk: Endi esa mikrafon sizlarda: O'zilar ishlatyotgan arxitektura qanday ? Nimalari yoqadi va nimalar keraksiz deb o'ylaysiz ? Oldin qanday edi hozir e
this message
FFlutter Dev Talk#ARCH-8 Logic & Validations — qaysi logic qayerda turadi? Architecture’da ko‘p uchraydigan savol: “Bu `if` qaysi layer’da turishi kerak?” Buni `if`ning o‘ziga eFFlutter Dev Talk💻 Hohlovchilar bo'lsa dam olish kunlarida LiveCoding qilib o'zimning eski ko'dlarimdan bir qismini olib yoki oramizda ko'dini review qildirmoqchi bo'lganlarni k
FFlutter Dev TalkFlutter Dev Talk@flutterdevtalk · channel
133subscribers5posts in 30 days
Venue feed Open in Telegram

An open public feed from the search index ChatCrawler — “Google for public Telegram”; refreshed as the venue is crawled. Times are UTC.

Public content only, official Telegram API. About · FAQ · Index limits · Remove a page · Catalog · Search · How we count