На стадии разработки программы можно делить на части или большие модули, такие как различные уровни представления, объекты доступа к базам данных, механизмы поиска и средства защиты данных. Разрабатывая модули как большие уникальные блоки, мы гарантированы от того, что один объект сможет воздействовать на другой. Кроме того, появляется возможность многократного использования компонентов в разных приложениях. Можно разделять эти модули на еще более мелкие подмодули и даже отдельные объекты, представляющие собой самые мелкие компоненты объектно-ориентированных программ. Сейчас мы рассмотрим самый маленький компонент объектно-ориентированной программы, которым является класс.
Классы
Класс - это определение или представление специфического типа данных. Классы служат образцами, по которым создаются всевозможные типы объектов в системе. Когда требуется определить новый объект, сначала надо сделать это с помощью ключевого слова class и только потом можно включать его в сценарии РНР. Явное различие между классом и объектом состоит в том, что классы определяют объекты, используемые в программах. Прежде чем обсуждать, как строить классы, надо отметить, что класс следует воспринимать как представление одной единственной идеи. Классы должны проектироваться так, чтобы они служили одной цели и обеспечивали все поведение, предполагаемое у этой одной идеи.
В классах РНР содержатся три главных компонента: члены (называемые данными или атрибутами), методы и конструкторы. Член - это элемент данных, содержащихся в объекте. Объект может содержать любое количество членов. Например, если моделировать автомобиль с помощью класса, то рулевое колесо или коробка передач должны быть определены как члены класса Саг. Методы - это сервисы, которые объект предоставляет своим клиентам, использующие и обрабатывающие его внутренние члены. Например, класс Саг может предоставлять метод для поворота автомобиля, взаимодействующий с внутренним атрибутом рулевого колеса.
Конструктор - это специальный метод для инициализации объекта и приведения его в состояние готовности. В РНР у объекта может быть только один конструктор. В классе Саг разумно добавить к автомобилю кузов, двигатель, колеса, передачу, сиденья и т. д. Конструктор обеспечивает, что каждый метод успешно выполнит свою операцию и возвратит желаемый результат, когда клиенту потребуются методы объекта. Например, радиоприемник должен быть установлен в машине, чтобы его можно было включить. В этом случае конструктор отвечает за то, чтобы приемник был установлен раньше, чем он будет использован.