Что такое объектно-ориентированное программирование (ООП)
Классы
Объектно-ориентированное программирование (ООП) — это парадигма, в которой программа строится из объектов, объединяющих данные (состояние) и поведение (методы).
Идея
Вместо разрозненных функций и данных код организуется вокруг объектов, моделирующих сущности предметной области.
Четыре принципа
- Инкапсуляция — сокрытие внутреннего состояния, доступ через методы.
- Наследование — переиспользование поведения родителя.
- Полиморфизм — единый интерфейс, разные реализации.
- Абстракция — выделение существенного, сокрытие деталей.
ООП в JavaScript
JavaScript использует прототипное ООП, а class — синтаксический сахар:
class User {
#password; // инкапсуляция
constructor(name) { this.name = name; }
greet() { return `Привет, ${this.name}`; }
}
class Admin extends User { // наследование
greet() { return `Админ ${this.name}`; } // полиморфизм
}Плюсы и когда применять
- Понятная модель предметной области.
- Переиспользование и расширяемость.
- Не единственная парадигма: JS также хорошо поддерживает функциональный стиль.
Коротко для собеседования
ООП — организация кода вокруг объектов, объединяющих данные и поведение. Четыре принципа: инкапсуляция, наследование, полиморфизм, абстракция. В JS реализовано через прототипы; class — сахар над ними.