The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Началось альфа-тестирование PHP 8.3"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Отдельный RSS теперь доступен для каждого обсуждения в форуме и каждого минипортала.
. "Началось альфа-тестирование PHP 8.3" +1 +/
Сообщение от Прохожий (??), 11-Июн-23, 02:14 
Всё, что я озвучу - это, конечно, банальщина. Но раз человек спрашивает, почему бы не ответить. Сразу сделаю оговорку, что описание ниже очень упрощённое. Просто для того, чтобы понять, с чего следует начинать.

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

Следующим шагом должно быть определение процедур (функций), которые будут работать с этими данными: обеспечивать их ввод/вывод, инициализацию, изменение. Эти процедуры станут методами класса.

Вуаля, мы создали новый класс.

Теперь про наследование. Если есть группа сущностей, которые отличаются одна от другой только какими-то дополнительными полями и/или методами, то в родительский класс целесообразно выделить общие для всех групп сущностей поля и методы. А в дочерние классы добавлять уже отличия в виде специфических для данной группы полей или методов.

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

Разумеется, описанной выше упрощённой моделью всё ООП не ограничивается, это всего лишь основы. Но этого должно быть достаточно, чтобы перейти от процедурного программирования к ООП.

Также следует заметить, что ООП не единственная парадигма. Есть ещё функциональное программирование. Но о нём пусть напишет кто-то другой.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Началось альфа-тестирование PHP 8.3, opennews, 09-Июн-23, 13:59  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру