Объектно-ориентированное программирование (ООП)

Объектно-ориентированное программирование - концепция дизайна. Это не что иное, как метод разработки приложений. Приложения могут быть похожими на веб-приложения, окна, Android или iOS. Используя ООП в PHP, вы можете создавать веб-приложения.

Преимущества объектно-ориентированного программирования

Существует много преимуществ ООП над процедурным программированием:
1. Повторная юзабилити: предположим, что вы создали класс «Автомобиль» и использовали его в какой-то момент в приложении, вы можете снова использовать тот же класс («Автомобиль») в другом месте в том же приложении.
2. Простота в обслуживании: легко поддерживать и модифицировать существующий код, потому что мы можем создавать новые объекты, просто делая небольшие отличия от существующих.

Особенности объектно-ориентированного программирования:

1. В ООП вы можете легко добавлять данные и функции в случае необходимости.
2. В ООП данные скрыты и к ним не могут обращаться внешние функции.
3. В ООП программы делятся на сущности, известные как объекты.

1. Объект

Объект - это экземпляр класса. Все, что мы видим, не что иное, как объекты. Объекты могут быть похожими на ручку, автомобиль, компьютер, велосипед, мобильные телефоны и т. д. Если есть объекты, то они будут иметь свойства и поведения, которые будут отличать один объект от другого.
Например: возьмём в пример автомобиль. У автомобиля есть свойства (Цвет, Модель, Бренд) и поведение (он может двигаться вперед и назад). Подобным образом разные объекты имеют разные свойства и поведение. Возьмем еще один пример - телевизор. У телевизора есть свойства (Модель, Бренд, Цвет, Размер) и поведение (ВКЛ и ВЫКЛ). Здесь мы видим, что оба объекта имеют разнородное поведение. Объекты программирования такие же, как объекты реального мира, имеющие разные свойства и поведение.

2. Класс

Классы - это то, что определяет объект. Вы можете сказать, что класс является планом объекта. Класс описывает все свойства и поведение объекта. Классы определяют атрибуты и методы объектов такого рода. Например: класс «ваш автомобиль» определит, что автомобиль должен иметь цвет и количество дверей. Объект «ваш автомобиль», будет иметь цвет Красный и 4 двери. «Ваш автомобиль» - объект класса «Автомобиль» . Или в плане программирования мы можем сказать , что объект «ваш автомобиль» является примером класса «автомобиль» . Таким образом, структурное представление (чертеж) вашего объекта является классом. Помните: Вы должны создать класс перед созданием любого объекта.

3. Сущности

Сущность часто представляет собой группу людей (например, детей, заявителей), но также может представлять собой группу объектов (например, учебников), действия (например, назначения) или понятия. Объектно-ориентированные программисты должны думать как объекты. Традиционные программисты думают, как компьютеры. Чтобы управлять различными классами программной системы и уменьшать сложность, существует несколько методов. Их можно назвать концепцией ООП.

Четыре основных понятия в ООП:

1. Наследование - способность создавать новый класс из существующего класса. Давайте подробно рассмотрим пример наследования из нашей повседневной жизни. Предположим, что человек мертв, тогда все его вещи (это может быть собственность, права и т. д.) будут переданы его детям. Точно так же это происходит в случае ООП, где базовый класс (также называемый родительским классом) имеет свойства и методы, которые будут унаследованы подклассом (также называемым иногда как дочерний класс). Здесь мы увидели, что объекты определяются классами, а классы могут наследовать свойства и поведения из уже существующих классов (базовый класс). Получаемый класс также известен как подкласс или дочерний класс или производный класс. Полученный класс может иметь некоторые дополнительные свойства и поведение.
2. Инкапсуляция - скрытие данных или деталей реализации одного модуля из других модулей. Его также можно определить как ограничение доступа к определенным свойствам. Инкапсуляция - это метод, который используется для скрытия данных. Это полезно для снижения сложности системы.
3. Абстракция - это процесс, показывающий существенную особенность объекта, скрывая некоторые важные детали. Это снижает сложность кода (еще одна хорошая особенность ООП) и используется для отображения необходимых деталей клиенту объекта. Давайте рассмотрим на примере: Когда вы включаете/выключаете монитор, знаете ли вы, как монитор производит включение/выключение? Нам не нужно знать, что происходит внутри монитора. Опять же, когда вы водите автомобиль и переключаете передачи, нужно ли вам знать о том, как именно происходит переключение передач во внутреннем механизме коробки передач? Конечно Нет, для вас важно, чтобы передача переключилась, вот и все. Точно так же и с абстракцией. Абстракция представляет собой процесс раскрытия только существенных деталей объекта и скрытия важных деталей, которые не требуются пользователю. Это помогает в повторном использовании кода.
4. Полиморфизм - получается комбинацией двух слов POLY и MORPHISM. POLY означает много, а MORPH означает небольшое изменение, можно сказать, что полиморфизм - это способность одного объекта иметь различные формы.

Вывод: к сожалению тема ООП очень сложная и обширная, я понимаю, что содержания этой статьи, для понимания ООП недостаточно. В скором времени я снова затрону тему ООП и выложу расширенную статью об ООП с примерами.

Количество уникальных просмотров: 1103

Оставить комментарий