Techie's Blog
148 subscribers
701 photos
198 videos
7 files
112 links
Flutter Engineer | Tech enthusiast.
Working at 🟢 https://paynet.uz

Likes traveling, books, cats 😄.
Sharing my journay to become a senior.

Community : @FlutterDevTalk
DM : @iamtechie
Download Telegram
Coffee - is a tool to convert a code into a "magic"
👍1
Media is too big
VIEW IN TELEGRAM
Day13 Sevgan ishingiz bilan shug’ullaning.
#savol

Object va dynamic turlarning farqi nima ?

🔽 Object - Dart tilida barcha obyektlar ushbu klasdan meros oladi.

- barcha turlar (int, string, bool, List, Map va barchasi) Object klasidan kelib chiqadi;
- object klasida e'lon qilingan barcha o'zgaruvchilar Object'ning umumiy metodlari bilan ishlay oladi;
- object o'zgaruvchilar compile timeda tekshiriladi va xatoliklarni aniqlaydi;
- agar o'zgaruvchining tur metodlari bilan ishlamoqchi bo'lsangiz cast qilishingizga to'g'ri keldi;
- to'g'ridan to'g'ri null qiymat olmaydi buning uchun nullable qilishingiz kerak ya'ni Object?;

🔽 dynamic - barcha turdagi qiymatlarni qabul qilishi mumkin;

- tekshiruvlar runtime'da amalga oshiriladi;
- runtime check bo'lgani uchun ishlatish havfsiz emas ya'ni runtime error chiqish ehtimoli katta;
- o'zgaruvchining metodlariga kirish mumkin lekin noto'g'ri bo'lsa ya'na runtime error olasiz 😅;

Runtime error lardan bilan yuzlashishni hohlamasangiz Object dan foydalangan maqulroq.
Real Dart&Flutter interview ko'ramizmi ?
Final Results
79%
Ko'ramiz 🤝
4%
Qiziqmas 🫤
17%
O'zi nima bo'lyapti 😄
This media is not supported in your browser
VIEW IN TELEGRAM
Lekin tashqarida mazza qor yog'yaptiya ? ❄️.
😍2
Techie's Blog pinned «Real Dart&Flutter interview ko'ramizmi ?»
This media is not supported in your browser
VIEW IN TELEGRAM
1
#fun
Testerdan hayot saboqlari:
- Hech qachon front-end back-end'ga, back-end esa front-end'ga ishonmasligi kerak. Tester esa hech biriga ishonib qolmasigi kerak auff😎🤘🤘.
👍2🔥2
Live stream scheduled for
Live stream started
Qiziqtirgan savollarni shu yerga yozishilar mumkin. Oxirida javob beramiz
🔥4
Live stream finished (1 hour)
Media is too big
VIEW IN TELEGRAM
Interviewer: Sirjoddin Odamboev (4+ years experience);
Candidate: Isroiljon Abduvakhobov (2.5+ years experience);
6
Techie's Blog
Interviewer: Sirjoddin Odamboev (4+ years experience); Candidate: Isroiljon Abduvakhobov (2.5+ years experience);
Flutter Interview Questions

Programming:

◦ Statically typed programming language and dynamically typed programming language
◦ OOP and its 4 pillars
◦ Difference between abstract classes and interfaces
◦ overloading vs overriding
◦ What is HTTP
◦ SOLID

Dart:

◦ Which platforms dart compiler can compile
◦ Tell me about Dart VM
◦ Tell me about null safety
◦ final vs const
◦ dart collections
◦ dart collections vs package collections
◦ Tell me about map types in dart
◦ Tell me about the object class
◦ The hashCode property uses for what?
◦ Tell me about pattern matching
◦ Tell me about sealed classes
◦ Tell me about macros
◦ EventLoop: events and microtasks

Flutter:

◦ What is flutter?
◦ Flutter architectural overview.
◦ Widgets in flutter
◦ Stateful widget lifecycle
◦ Keys in flutter
◦ Testing in flutter
◦ Trees in flutter
◦ Inherited widget
◦ Buildcontext
◦ Tree shaking
◦ Animations
◦ runZonedGuarded
◦ Platform specific connection
◦ Navigation system in flutter

P.s/ O'ylemanki barchaga foydali bo'ldi.
👍6🔥1
Audio
Eshitib o'rganmoqchi bo'lganlar uchun audio variant.
5👍1
#savol

Dart'da pattern matching nima ?

Pattern matching - bu o‘zgaruvchilarni aniqlash, shartlarni tekshirish va ma’lumotlarni ajratib olish (destructuring) uchun ishlatiladigan qulay usul. U Dart 3 versiyasidan boshlab qo‘llab-quvvatlanadi va switch operatorida yoki if-case bloklarida ishlatiladi.

1️⃣ Oddit pattern matching (switch bilan) :

void checkValue(Object value) {
switch (value) {
case int n:
print('Bu butun son: $n');
break;
case String s:
print('Bu string: $s');
break;
default:
print('Noma’lum tur');
}
}

void main() {
checkValue(42); // Bu butun son: 42
checkValue("Salom"); // Bu string: Salom
}


2️⃣ Destructuring (recordlar bilan):

(String, int) getUser() {
return ('Isroiljon', 25);
}

void main() {
var (name, age) = getUser();
print('Ism: $name, Yoshi: $age'); // Ism: Isroiljon, Yoshi: 25
}

bu yerda pattern matching yordamida tuple (Record) qiymatlari ajratib olindi.

3️⃣ if-case bilan pattern matching:

void checkType(Object obj) {
if (obj case int n) {
print('Bu butun son: $n');
} else if (obj case String s) {
print('Bu string: $s');
} else {
print('Noma’lum tur');
}
}

void main() {
checkType(100); // Bu butun son: 100
checkType('Hello'); // Bu string: Hello
}


4️⃣ Pattern Matching bilan JSON-like obyektlarni ajratish

void checkUser(Map<String, dynamic> user) {
switch (user) {
case {'name': String name, 'age': int age}:
print('Ism: $name, Yoshi: $age');
break;
default:
print('Noto‘g‘ri formatdagi user');
}
}

void main() {
var user = {'name': 'Isroiljon', 'age': 25};
checkUser(user); // Ism: Isroiljon, Yoshi: 25
}

case {'name': String name, 'age': int age} – JSON (Map) ichidagi qiymatlarni ajratib oladi.
#ramazonMuborak 🌙

Olloh bu ramazon oyini chiroyli va o’ziga maqbul amallar bilan o’tkazishlikni hammamizga nasib qilsin. Hammaga Ramazon muborak bo’lsin 😇.
👍7
Shanba vaybi.
Ramazon o’zgachada.
👍31