evgeniy8705
@evgeniy8705
Повелитель вселенной

Правильный ли подход использования ООП в JS?

Прочитал главу книги про ООП.

В голове более менее сформировалось понимание "ООП".

После прочтения, закрепился следующий паттерн

function SuperClass(type) {
	this.type = type;
}

SuperClass.prototype.getType = function() {
	return this.type;
}

function SubClass() {
	SuperClass.call(this, "instance"); // Наследование свойств.
}

SubClass.prototype = Object.create(SuperClass.prototype); // Наследование методов
SubClass.constructor = SubClass;

var instance = new SubClass();


Правильный ли подход реализации "ООП"?

PS. Если я что то не так понял, или вопрос вообще глупый,.. разъясните пожалуйста что не так.
  • Вопрос задан
  • 683 просмотра
Пригласить эксперта
Ответы на вопрос 2
Stalker_RED
@Stalker_RED
Хитрая штука, этот ваш ООП.
Процитирую прям сюда первые две строки:
Объе́ктно-ориенти́рованное программи́рование (ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов и классов. В случае языков с прототипированием вместо классов используются объекты-прототипы.


И уже из следующей статьи:
Прототипное программирование — стиль объектно-ориентированного программирования, при котором отсутствует понятие класса, а наследование производится путём клонирования существующего экземпляра объекта — прототипа.


Вот такой он внезапный, ООП без классов.

Хотя если хочется классы, в сети куча инструкций как эмулировать их в js.
Ответ написан
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Все так. Только ООП в JS есть и было без эмуляции «классического» наследования:) ООП !== классы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы