Парадигмы ООП

1) Инкапсуляция
Сокрытие реализации программных частей для безопасности. В качестве примера машина без корпуса (инкапсуляции) и с корпусом. Создавая свойства и методы не делайте их сразу public, делайте их открытыми только тогда, когда это нужно или если это было сразу так задумано. Паблик свойства вообще не желательны.

2) Наследование
Наследование это создание нового объекта на основании старого. Создание нового класса на основании старого.

3) Полиморфизм
Возможность дополнять объект функционалом. Возможность выступать объекту в разных формах. Классический полиморфизм - замещение, переопределение методов. ad hoc полиформизм - перегрузка методов, поведение в зависимости от данных. Подмена объектов во время выполнения программы с одинаковыми методами через интерфейс.

4) Абстракция
Абстракция - В ООП это придание объекту характеристик, которые четко выделяет его на фоне остальных, определяя его концептуальные границы. Абстрагирование - В ООП это способ выделить набор значимых характеристик объекта, исключая из рассмотрения не значимые. Соответственно абстракция это набор таких характеристик.

5) Посылка сообщений
Посылка сообщения это вызов метода. Так же события и их обработчики.

6) Повторное использование
Все что перечислено выше работает на повторное использование кода.

Это единственно верный порядок парадигм ООП, так как каждая последующая использует предыдущие.

Объект это сущность, которая хранит в себе состояние и поведение. Должно быть соответствие между состоянием объекта и его поведением.

Объект должен делать только то, что на него возложено и ему соответствует.

Все объекты привязаны к прототипам из реального мира. ООП и повседневная жизнь не могут существовать раздельно.


comments powered by Disqus