Вы находитесь на странице: 1из 2

Понятие объектно-ориентированного

программирования
Объектно-ориентированное программирование (ООП) — методология программирования, основанная на
представлении программы в виде совокупности объектов, каждый из которых является экземпляром
определённого класса, а классы образуют иерархию наследования.

Основные принципы ООП:


1. Абстракция - это использование только тех характеристик объекта, которые с достаточной точностью
представляют его в данной системе; это выделение в моделируемом предмете сущностей, важных
для решения конкретной задачи. Указанное выше контекстное понимание объекта (предмета) в
общем случае формализуется в виде класса.
2. Инкапсуляция — объединение свойств (данных) и методов (поведения), работающих со свойствами, в
классе. Суть инкапсуляции: организация иерархической управляемости через сокрытие собственно
реализации (чтобы было достаточно простой команды «что делать», без одновременного уточнения
как именно делать). Класс должен защищать целостность данных, которые он инкапсулирует.
3. Наследование — свойство системы, позволяющее описать новый класс на основе уже
существующего с частично или полностью заимствующейся функциональностью. Наследование
позволяет на каждом иерархической ступени учитывать только изменения, не дублируя всё
остальное, учтённое на предыдущих шагах. JavaScript вместо наследования использует
прототипирование: если искомого свойства или вызванного метода в самом объекте нет, то запрос
передаётся объекту-прототипу (свойство prototype всех объектов JavaScript).
4. Полиморфизм — свойство системы, позволяющее использовать объекты с одинаковым интерфейсом
без информации о типе и внутренней структуре объекта; это способность объекта выбирать
правильный метод в зависимости от типа данных, полученных в сообщении. Цель
полиморфизма: использование одного имени для задания общих для класса действий, при этом
выполнение каждого конкретного
СКАЧАНО Сдействия будет определяться
WWW.MEGASLIV.BIZ типом данных.
- ПРИСОЕДИНЯЙСЯ!
Объектно-ориентированное программирование

Класс — универсальный, комплексный тип данных, состоящий из тематически единого набора:


• «полей» (переменных более элементарных типов) и
• «методов» (функций для работы с этими полями).
Класс является моделью информационной сущности с внутренним и внешним интерфейсами.
Переменная-объект, относящаяся к заданному классом типу, называется экземпляром класса.
В свою очередь, целостность предметной области объектов и их интерфейсов, а также удобство их
проектирования, обеспечивается наследованием.

Объект — это появляющийся при создании экземпляра класса набор свойств и их значений в памяти, на
которые можно сослаться с помощью идентификатора:
• каждое свойство состоит из имени и значения, ассоциированного с этим именем;
• значением свойства может быть функция, которую можно назвать методом объекта.

Пример:
// Список свойств и методов для класса Animal
var Animal = {
type: "Invertebrates", // значение type по умолчанию
displayType: function() { // метод, отображающий тип объекта Animal
console.log(this.type);
}
};

var animal = Object.create(Animal); // создаем объект класса Animal


animal.displayType(); // Invertebrates
var fish = Object.create(Animal); // создаем объект класса Animal и присваиваем ему type = Fishes
fish.type = "Fishes";
fish.displayType(); // Fishes https://flagman.top/