JavaScript’da OOP (Object-Oriented Programming) nima ?
OOP — bu dasturlashdagi obyektlarga asoslangan yondashuv bo‘lib, kodni tartibli va takrorlanmas shaklda yozishga yordam beradi.
JavaScript’da OOP (Object-Oriented Programming) nima ?
OOP — bu dasturlashdagi obyektlarga asoslangan yondashuv bo‘lib, kodni tartibli va takrorlanmas shaklda yozishga yordam beradi.
JavaScript’da OOP’ning asosiy tushunchalari:
1. Class (Sinf)
Class — bu obyektlar uchun shablon. U orqali bir xil xususiyat va funksiyalarga ega obyektlarni yaratish mumkin.
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
greet() {
console.log(`Hi, my name is ${this.name}`);
}
}
const begzod = new Person("Begzod", 16);
begzod.greet(); // Hi, my name is Begzod
🔹 2. Inheritance (Meros olish)
Bir class boshqasidan xususiyatlarni meros qilib olishi mumkin(Bu kodni qayta ishlatish imkonini beradi.
class Developer extends Person {
constructor(name, age, skill) {
super(name, age);
this.skill = skill;
}
work() {
console.log(`${this.name} is coding with ${this.skill}`);
}
}
const dev = new Developer("Begzod", 16, "React");
dev.work(); // Begzod is coding with React).
🔹 3. Encapsulation (Yashirish)
Class ichidagi ma’lumotlarni himoyalash va tashqaridan to‘g‘ridan-to‘g‘ri o‘zgartirishga yo‘l qo‘ymaslik uchun ishlatiladi.
class BankAccount {
#balance = 0;
deposit(amount) {
this.#balance += amount;
}
getBalance() {
return this.#balance;
}
}
const acc = new BankAccount();
acc.deposit(100);
console.log(acc.getBalance()); // 100
🔹 4. Polymorphism (Ko‘p shakllilik)
Bir xil metod turli classlarda turlicha ishlashi mumkin.
class Animal {
speak() {
console.log("Animal makes a sound");
}
}
class Dog extends Animal {
speak() {
console.log("Dog barks");
}
}
const dog = new Dog();
dog.speak(); // Dog barks
Nega OOP kerak ?
- Kodni modullar shaklida bo‘lish imkonini beradi
- Loyihani kattalashtirish oson bo‘ladi
- Takrorlanuvchi kodlar kamayadi
- Tizim barqaror va tushunarli bo‘ladi
메타데이터
- post_id
- b084e9af408c
- slug
- javascriptda-oop-object-oriented-programming-nima-b084e9af408c
- url
- https://medium.com/@begidev/javascriptda-oop-object-oriented-programming-nima-b084e9af408c
- canonical_url
- https://medium.com/@begidev/javascriptda-oop-object-oriented-programming-nima-b084e9af408c
- author_url
- https://medium.com/@begidev
- status
- ok
- fetched_at
- 2026-07-14 05:39:23