Flutter Dev | Uzbekistan 🇺🇿
رفتن به کانال در Telegram
Flutter bu - hozirgi kundagi eng yetuk kross platformali dasturlash vositasidir! Bu kanal Flutterning o'zbek zabon vakillari uchun. Blog avtori: © Muhammad Aziz (@mamasodikoff) 🥛 Ayron olib bering: tirikchilik.uz/cosmos - Web sayt: flutterdev.uz
نمایش بیشتر385
مشترکین
-124 ساعت
اطلاعاتی وجود ندارد7 روز
اطلاعاتی وجود ندارد30 روز
آرشیو پست ها
Repost from Vohid Karimov
Behavioral interviewlarda qilinadigan xatolar:
— STAR uslubida javob bermaslik. Tabiatdan savollarga qisqa javob berishga o'rganib qolganmiz. Follow-up savollar berilgandagina detallarga kiramiz. STAR uslubi sizni bir tizimga solib savolga yetarli detallar bilan to'liq javob berishga majburlaydi.
— Hamma savolni STAR metodida gapirishga harakat qilish. "Tell me about yourself? What is your favorite programming language?" kabi savollarga oddiy javob bersa bo'ladi.
— Yolg'on gapirish yoki bo'rtirish. Follow-up savollar bilan siz aytgan gaplar qanchalik to'g'riligini bilib olish qiyin emas. Savolga yaxshi javobingiz bo'lmasa shuni ochiq aytish kerak. Bu interviewni fail qildingiz degani emas, kerakli "signal"larni interviewer boshqa savollar orqali bilib olaveradi.
— Weakness/failure so'ralganda ochiq gapirmaslik yoki down-play qilish. Hammada weakness bor va hamma yetarlicha fuck-up qilgan. Shuni bilgan holda interviewer sizdan rostan qilgan hatolaringizni va eng muhimi ulardan olgan ko'nikmalaringizni bilmoqchi.
— va eng katta xato bu tayyorgarlik uchun yetarlicha vaqt sarflamaslik. Yaxshi tayyorgarlik: a) ko'p so'raladigan savollarga o'zingizni tajribangizdan javoblarni STAR metodida yozib chiqish, b) uni yotlab chiqish va c) kamida 2-3ta mock interview qilish.
🔥 Sotiladi: Telegram kanal nomi —
@fluttero / @flutterblogs
✅ Qisqa va brandable
✅ Flutter developerlar, kurslar va shaxsiy bloglar uchun ideal
✅ Global audience’ga mos
🎯 Flutter community, online kurs, SaaS yoki IT brand ochmoqchi bo‘lsangiz — ayni nom.
💰 Narx: Har biri $60 (kelishiladi)
Murojaat: @mamasodikoff
Boshqa usernamelar ham qiziq boʻlsa: https://t.me/hornify
(Flutter communitylarga ulashing, thanks)
Past baho berilgan "yorvoreyshn" paketlar
Hamma Bloc, Riverpod va Provider haqida gapiradi…
Lekin haqiqiy unumdorlik va toza arxitektura ko‘pincha yashirin "gem" lardan keladi 💎
Quyida men production’da real ishlatadigan 6 ta Flutter paketi:
⚡️ signals_flutter — juda tezkor reaktiv "state management" yechimi
🗄 isar — nihoyatda tez lokal ma’lumotlar bazasi
🎨 flex_color_scheme — professional Material 3 mavzulari (theming)
🪝 flutter_hooks — StatefulWidget bilan bog‘liq og‘riqlarni yo‘qotadi
🐞 talker_flutter — ilova ichida loglar va xatolarni tekshirish (inspector)
👁 visibility_detector — ekrandagi widgetlarni aniqlash (lazy loading + animatsiyalar) - (testing uchun)
#package #plugin
@flutterdevuz
Muloqot kanali qanday sekinlashtiradi?
- Onboarding: Har bir loyihaga qabul qilingan dasturchi onboarding`dan o'tishi kerak bu vaqt talab qiladi.
- Umumiy modullar: Umumiy bo'lgan kod dasturchilar ishni boshqa dasturchilar bilan kelishishga, "merge conflict"larni hal qilishga olib keladi.
- Qarorlar kelishilishi kerak. Har bir qaror guruh azolari bilan kelishish kerak. Guruh qancha katta bo'lsa kelishish uchun ko'p vaqt ketadi.
Shu sababli har doim ham muammo ko'proq dasturchi bilan hal qila olmaysiz.
Manba: Bro'ks qonuni (Brooks’ Law)
@flutterdevuz
Nega kechikayotgan loyihaga ko'proq dasturchi qo'shilsa kechikish ko'payadi
Bu rostdan ilmiy isbotlandan qonuniyat. Agar loyiha 2 haftaga kechikayotgan bo'lsa unda ko'proq dasturchi qo'shish 1 oyga kechichtirishi mumkin. Buni asosiy ikkita sababi mavjud:
1. IT sohada hamma ishni parallel qilib bo'lmaydi
2. Har bir guruhga qo'shilgan dasturchi qo'shimcha muloqot kanali yaratadi
Qaysi ishlarni parallel qilib bo'lmaydi:
- Arxitektura, data modellar qancha ko'p dasturchi ishlasa shuncha chalkashlikka olib keladi
- Critical path: Tovarni savatga qo'shish ishlab chiqilmaguncha uni sotib olishni ustida ishlay olmaysiz.
- Debugging: Production`da muammo bor, ko'p dasturchi shug'ullanishi ishni tez bajarilishiga olib kelmaydi.
...
Maqola muallifi yozishicha, Flutter har doim "near native" experience beradi deb aytishgan.
Lekin aslida, bir xil sharoitda, bir xil appni yozganimizda, Flutter Native platformalardan ham tezroq va yaxshiroqligini koʻrsatdik demoqda...
Toyota, butunlay Dart & Flutter asosida qurilgan konsol darajasidagi, ochiq kodli 3D dvigatel Fluorite bilan hamkorlik qildi 🎉
Flutter an'anaviy ilovalardan ancha uzoqqa - avtomobil, embedded va endi yuqori samarali 3D ish muhitiga o'tayotganlarning yana bir freymworki!
Rasmiy websayt: https://fluorite.game
Yangilik: https://www.phoronix.com/news/Fluorite-Toyota-Game-Engine
@flutterdevuz
🚀 Exciting news! Flutter new version is out. Stay updated
Version: 3.41.0
Release date: 11.02.2026
Dart SDK version: 3.11.0
🌐 Release Notes
🌐 Changelog
🌐 Breaking changes
🌐 Tag
📚 Exciting news! New Flutter articles are available.
1. What’s new in lutter 3.41
Empowering the communityToday, we’re excited to announce the release of lutter 3.41, marking a transformative milestone in our journey together! What an exciting time to be a developer; this release represents our commitment to empowering our community in shaping the direction of lutter. With 86...
Repost from Rustam Sobirov
Macbook uchun E-IMZO
Youtube'da Macbook uchun E-IMZO o'rnatish video qo'llanmasini tayyorlagandik.
Barcha kerakli kodlar bu yerda
E-imzo kalitini 3-daqiqada arzonroq olish tartibi esa bu yerda
Mac ishlatmoqchi bo'lgan buxgalterlar bu muammoni yaxshi tushunishadi. Kimgadir foydali bo'lgan bo'lsa xursandmiz)
#eimzo
@blog_rustam
Repost from Ali Xr
ValueNotifier va ChangeNotifier – Farqi nimada?
Flutter-da ValueNotifier va ChangeNotifier reaktiv holat boshqarish uchun ishlatiladi. Ikkalasi ham UI-ni yangilash uchun ishlatiladi, lekin ularning ishlash mexanizmi farqlanadi.
⸻
ValueNotifier – Soddalashtirilgan reaktiv yondashuv
Agar faqat bitta qiymat (value) ni kuzatish kerak bo‘lsa, ValueNotifier eng optimal yechim. U notifyListeners() chaqirmasdan ham UI-ni avtomatik yangilaydi.
Misol: Counter App
class CounterModel {
final ValueNotifier<int> counter = ValueNotifier<int>(0);
void increment() {
counter.value++;
}
}
Foydalanish:
ValueListenableBuilder<int>(
valueListenable: counterModel.counter,
builder: (context, value, child) {
return Text('$value', style: TextStyle(fontSize: 24));
},
);
➡️ ValueNotifier faqat bitta o‘zgaruvchini kuzatish uchun ishlatiladi.
⸻
ChangeNotifier – Bir nechta o‘zgaruvchilarni boshqarish
Agar bir nechta qiymatlarni boshqarish kerak bo‘lsa, ChangeNotifier ishlatish tavsiya etiladi. notifyListeners() chaqirish orqali barcha Consumer yoki Provider bog‘langan widgetlarni yangilaydi.
Misol: Todo List App
class TodoModel extends ChangeNotifier {
List<String> todos = [];
void addTodo(String todo) {
todos.add(todo);
notifyListeners();
}
}
Foydalanish (Provider bilan):
Consumer<TodoModel>(
builder: (context, todoModel, child) {
return ListView.builder(
itemCount: todoModel.todos.length,
itemBuilder: (context, index) {
return ListTile(title: Text(todoModel.todos[index]));
},
);
},
);
➡️ ChangeNotifier bir nechta qiymatlarni boshqarish uchun mos keladi.
⸻
Xulosa
✅ Agar faqat bitta qiymatni kuzatish kerak bo‘lsa – ValueNotifier ishlatish osonroq va engillashtirilgan.
✅ Agar bir nechta qiymat yoki murakkab holat bo‘lsa – ChangeNotifier yaxshiroq tanlov.
Siz qaysi birini ishlatgansiz? Fikrlaringizni kutaman!
@alixrRepost from Ali Xr
+1
Flutter Performance Tip: keepAlive bilan silliqroq skroll qilish
Nega keepAlive muhim?
Agar keepAlive ishlatilmasa, ekrandan chiqib ketgan vidjetlar dispose bo‘lib, qayta skroll qilinganda yana build bo‘ladi. Bu quyidagi muammolarga olib keladi:
• Scroll pozitsiyasi yo‘qoladi
• Keraksiz rebuild’lar yuz beradi
• Kontent titraydi yoki miltillaydi
• Animatsiyalar to‘xtab qoladi
✅ keepAlive dan foydalaning, agar:
• Element ichki holat (state) saqlab qolishi kerak bo‘lsa
• Vidjet initsializatsiyasi og‘ir (expensive) bo‘lsa
• UI animatsiyalar yoki transition’lar ishlatsa
• Foydalanuvchi eski elementlarga qayta skroll qilish ehtimoli yuqori bo‘lsa
❌ keepAlive dan foydalanmang, agar:
• Ro‘yxatda yuzlab yoki minglab elementlar bo‘lsa
• Elementlar juda oddiy va stateless bo‘lsa
• Xotira (memory) muammosi bo‘lsa
@alixr @flutterorg
Repost from Ali Xr
🌀 Dart'da Future va async/await — nima, qanday ishlaydi, va qanday ishlatilmasligi kerak?
💡 Dastur ishlayotgan paytda ba'zida natija hoziroq emas, kelajakda tayyor bo'lishi mumkin. Masalan:
📡 serverdan ma'lumot kelishi,
🗂 fayl o'qilishi,
🌐 internet orqali so‘rov yuborilishi...
Shunday holatlarda Future ishlatiladi.
🔹 Future — bu nima?
Future — bu “kelajakdagi natija”.
U hozircha yo‘q, lekin bir payt kelib tayyor bo‘ladi — yoki xatolik bilan tugaydi.
Future<String> getUserName() {
return Future.delayed(Duration(seconds: 2), () => 'Alimardon');
}
👉 Bu funksiya 2 sekunddan keyin 'Alimardon' qiymatini qaytaradi.
🔹 Async/Await — bu qanday ishlaydi?
async funksiyani asinxron qiladi — ya’ni uning ichida await ishlatish mumkin bo'ladi.
Future<void> greetUser() async {
final name = await getUserName();
print('Salom, $name!');
}
➡️ await — Future'ni kutadi. U holda kod “pauza” qiladi, lekin UI muzlamaydi.
⚠️ Nima qilmaslikni maslahat beraman?
🚫 Future ichidagi then() bilan callbacklar zanjiri yasab, kodni spaghetti holga keltirmang:
getUserName().then((name) {
getUserAge().then((age) {
print('Name: $name, Age: $age');
});
});
Bu o‘qish qiyin, debug qilish ham charchatadi.
✅ Nima qilishingiz mumkin?
✅ async/await dan foydalaning. Kodingiz toza, tushunarli va maintainable bo‘ladi:
Future<void> showUserData() async {
final name = await getUserName();
final age = await getUserAge();
print('Name: $name, Age: $age');
}
📌 Yodda tuting:
• await faqat async funksiyada ishlaydi.
• Future<void> bu “natijasiz” Future.
• Har bir await UI ni muzlatmaydi, lekin kod oqimini kutdiradi.
• try/catch bilan xatoliklarni tuting:
try {
final data = await fetchData();
} catch (e) {
print('Xatolik: $e');
}
Agar ushbu post foydali bo‘lsa, ulashing, savollaringiz bo‘lsa kommentda yozing
@alixr @flutterorgMost Flutter Developers Still Don't Know This (2026)
Your app may look smooth. Your animations may be perfect. But the moment the OS kills your app…
💥 User progress is gone.
Forms reset. Scroll position lost. Checkout restarted.
And users don't complain 👉 They uninstall.
🧠 Flutter's Hidden Superpower: State Restoration
Flutter already solves this problem. Yet most apps never enable it.
✅
RootRestorationScope helps you:
• Restore scroll position, form input, and UI state
• Recover navigation stack after app kill
• Resume exactly where the user left off
• Deliver a native-level UX
This is NOT just local storage. This is framework-level state recovery.
🔧 What You Need (Nothing Fancy)
• flutter/widgets.dart → Core restoration APIs
• flutter/material.dart → Built-in restorable widgets
• shared_preferences → Optional for custom persistence
⚠️ Rules Every Flutter Dev Must Know
✅ Always set a unique restorationId
✅ Use RestorationMixin in StatefulWidgets
✅ Prefer Navigator.restorablePush()
✅ Test by killing the app from task manager (hot reload lies)
🛒 Real Production Use Case
E-commerce checkout flow:
User fills address → app killed → app reopened → ✨ Cart + form data still intact
That's not a "nice to have". That's professional Flutter engineering.
📚 Learn It Properly
Official API: https://api.flutter.dev/flutter/widgets/RootRestorationScope-class.html
Android Guide: https://docs.flutter.dev/platform-integration/android/restore-state-android
iOS Guide: https://docs.flutter.dev/platform-integration/ios/restore-state-ios
#restore #state
@flutterdevuzYashirin tahdid: Texnik qarzning (technical debt) inflyatsiyasi
Statistikaga ko‘ra, o‘rtacha dasturchi o‘z vaqtining qariyb 45 foizini yangi funksiya yaratishga emas, balki eski tizimni ta’mirlashga, xatolarni tuzatishga (maintenance) sarflaydi.
Agar kompaniya AI yordamida shunchaki kod hajmini oshirishga urg‘u bersa, bu tizimning murakkablashuviga olib keladi. Natijada, jamoa yangi qiymat yaratish o‘rniga, AI tomonidan tez yozilgan, ammo mukammal bo‘lmagan kodlarni «yamash» bilan band bo‘lib qoladi. Bu — biznes uchun sekinlashuv demakdir.
2026-yil strategiyasi: Raqamlar bilan gaplashish vaqti
Byudjet himoyasida va strategik sessiyalarda muvaffaqiyat qozonish uchun rahbarlar o‘z yondashuvlarini o‘zgartirishlari zarur:
Tejalgan vaqtni sifatga qayta investitsiya qiling: Sun’iy intellekt yordamida orttirilgan vaqtni yana kod yozishga emas, tizim barqarorligini oshirishga sarflash kerak. Refactoring (kodni tozalash), avtomatlashtirilgan testlar qamrovini oshirish va xavfsizlik — bu AI eng katta foyda keltiradigan sohalardir.
DORA metrikalari yetarli emas: Ilgari «qanchalik tez deploy qilyapmiz?» degan savol muhim edi. Endi esa «Jamoa vaqtining necha foizi mijoz uchun real qiymat yaratishga ketyapti-yu, qanchasi ‘remont’ga sarflanyapti?» degan savolga javob berish kerak.
AI — «qora ishlar» ustasi: Sun’iy intellektni faqat yangi funksiyalar uchun emas, balki eski, og‘ir tizimlarni yangilash (migratsiya) va hujjatlashtirish kabi dasturchilar yoqtirmaydigan vazifalarga jalb qilish eng yuqori ROI (investitsiya qaytimi) beradi.
2026-yilda g‘olib bo‘ladigan kompaniyalar — eng ko‘p AI litsenziyasini sotib olganlar emas. G‘oliblar — sun’iy intellekt yordamida jamoani kundalik mayda ishlardan qutqarib, ularning salohiyatini strategik muammolarni yechishga yo‘naltira olganlar bo‘ladi. Hozir hikoyalar aytish vaqti tugadi. Raqamlar va real natijalar davri boshlanmoqda.
@flutterdevuz
Flavorlar o'rnatish bo'yicha juda tushunarli video (Saqlab qo'ying)
#flavor #ios #android
@flutterdevuz
🎯 Ish topishda qiynalasizmi?
CVingizga javob yo'qmi? Suhbatda hayajon bosyaptimi?
👩💼 Yordam kerakmi?
Men sizga yordam bera olaman💪
✅ Xizmatlarim:
- Muvaffaqiyatli resume
- Kuchli cover letter
- LinkedIn va HH profilini optimallashtirish
- Real mock interview + feedback
- Hayajon bilan kurashish sirlarini o‘rganing
📦 Paketlar:
- Standard - 50 000 so'm: Resume + Cover letter + Resume feedback
- Pro - 80 000 so'm: Resume + Cover letter + Resume feedback + LinkedIn Profile (LinkedIn dan to'g'ri foydalanish) + HH (hh.uz dan to'g'ri foydalanish)
- Premium - 120 000 so'm: 2 xil Resume (Kompaniyalarga moslashuvchan) + Cover letter + Resume feedback + LinkedIn Profile (LinkedIn dan to'g'ri foydalanish) + HH (hh.uz dan to'g'ri foydalanish)
- Premium Plus - 220 000 so'm: 2 xil Resume + Cover letter + LinkedIn Profile (LinkedIn dan to'g'ri foydalanish) + HH (hh.uz dan to'g'ri foydalanish) + Mock Interview + Resume feedback
🏆 Muvaffaqiyatli suhbat uchun sirlar:
- Kuchli CV
- O'zingizga bo'lgan ishonch
- Yaxshi tayyorgarlik
⏱️ Natijalarni 24–48 soatda ko‘ring!
💬 Murojaat uchun: @miss_hr3047
___________________________
🎯 Испытываете трудности с поиском работы?
Ваше резюме остаётся без ответов? На собеседовании волнуетесь?
👩💼 Нужна помощь?
Я могу вам помочь💪
✅ Мои услуги:
- Успешное резюме
- Сильное сопроводительное письмо (cover letter)
- Оптимизация профиля LinkedIn и HH
- Реальные mock-интервью + обратная связь
- Изучение секретов борьбы с волнением
📦 Пакеты услуг:
- Standard – 50 000 сум: Резюме + Cover letter + обратная связь по резюме
- Pro – 80 000 сум: Резюме + Cover letter + обратная связь по резюме + LinkedIn (правильное использование) + HH (правильное использование hh.uz)
- Premium – 120 000 сум: 2 варианта резюме (под разные компании) + Cover letter + обратная связь по резюме + LinkedIn (правильное использование) + HH (правильное использование hh.uz)
- Premium Plus – 220 000 сум: 2 варианта резюме + Cover letter + LinkedIn (правильное использование) + HH (правильное использование hh.uz) + Mock Interview + обратная связь по резюме
🏆 Секрет успешного собеседования:
- Сильное резюме
- Уверенность в себе
- Хорошая подготовка
⏱️ Результат за 24-48 часов!
💬 Для связи: @miss_hr3047
Agar siz fintex ilovangizda foizni yozgan summangiz ichida hisoblanishini istasangiz, shu formulani ishlating.
void main() {
double total = 1000;
double feePercent = 1; // 1%
double feeDecimal = feePercent / 100;
double amountToSend = total / (1 + feeDecimal);
double fee = total - amountToSend;
print('Send: ${amountToSend.toStringAsFixed(2)}'); // 990.10
print('Fee: ${fee.toStringAsFixed(2)}'); // 9.90
}
@flutterdevuz