Obyektga yo’naltirilgan dasturlash (OOP) — dasturlashda tub burilish nuqtasi. Dart — sof obyektga yo’naltirilgan til: unda hamma narsa, hatto sonlar ham, obyektdir. OOP ma’lumot va u ustidagi amallarni bitta yaxlit birlikka — obyektga jamlaydi. Flutter ilovalari ham to’liq OOP asosida quriladi.
OOP — dasturni real dunyodagi obyektlar ko’rinishida modellashtiradigan paradigma. Uning to’rt ustuni bor: inkapsulatsiya, vorislik, polimorfizm va abstraksiya.
OOP nima uchun kerak?
Tasavvur qiling, foydalanuvchini dasturda ifodalash kerak. Protsedurali yondashuvda uning ismi, yoshi alohida o’zgaruvchilarda, harakatlari esa alohida funksiyalarda bo’lardi — hammasi sochilib ketadi. OOP esa bularni bitta Foydalanuvchi birligiga jamlaydi: ma’lumot va xatti-harakat bir joyda.
To’rt ustun
OOP ni ushlab turadigan to’rt tamoyilni jadvalda ko’ramiz:
| Ustun | Ma’nosi |
|---|---|
| Inkapsulatsiya | ma’lumot va metodni jamlab, ichkisini yashirish |
| Vorislik | bir sinf boshqasidan xususiyat oladi |
| Polimorfizm | bir nom turli obyektda turlicha ishlaydi |
| Abstraksiya | murakkablikni yashirib, faqat kerakni ko’rsatish |
Bularning har birini keyingi darslarda alohida chuqur o’rganamiz.
Birinchi sinf va obyekt
OOP markazida ikki tushuncha: sinf — andoza, obyekt — shu andozadan yaratilgan nusxa:
class Foydalanuvchi {
String ism = "";
int yosh = 0;
}
void main() {
var u = Foydalanuvchi(); // obyekt yaratdik
u.ism = "Master Sherkulov";
u.yosh = 30;
print("${u.ism}, ${u.yosh} yosh");
}
Master Sherkulov, 30 yosh
class Foydalanuvchi — andozani belgiladi, Foydalanuvchi() — obyekt yaratdi (Dart’da new yozish shart emas). Obyekt maydonlariga nuqta (.) orqali murojaat qilinadi.
Bir sinf — ko’p obyekt
Bitta andozadan istagancha mustaqil obyekt yaratsa bo’ladi:
class Foydalanuvchi {
String ism = "";
}
void main() {
var a = Foydalanuvchi();
var b = Foydalanuvchi();
a.ism = "Farrux";
b.ism = "Master Sherkulov";
print(a.ism);
print(b.ism);
}
Farrux
Master Sherkulov
a va b — mustaqil obyektlar, har biri o’z ma’lumotini saqlaydi.
Xulosa
Bu bo’limda OOP falsafasini, uning to’rt ustunini, sinf va obyekt tushunchasini hamda obyekt yaratishni (Dart’da newsiz) ko’rib chiqdik. OOP — murakkab dasturni boshqarish san’ati. Keyingi darsda sinflarga chuqurroq kirib boramiz.