Разработка информационной системы одной и тюменских компаний авторазбора

дипломная работа

3.1.1 Общие сведения о классах Web-приложения

Классы приложения делятся на следующие типы:

? Компоненты(Component)

? Модели(Model )

_ Модели роботы с базой.

_ Модели форм.

_ Простая модель.

? Поведения(Behavior )

? Контроллеры(Controller )

? Действия(Action)

? Расширения(Extansions)

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

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

Модели работы с базой - задача таких классов, взаимодействие с конкретной таблицей базой данных и выполнение CRUD операций записей.

Модели форм - классы данного типа имеют широкое применение, основной задачей таких моделей - валидация введенных данных пользователем на форму и выполнение каких либо действий после успешной валидации.

Поведения - задача класса, предоставить функционал, который смогут использовать другие модели. Подключение поведений к другим моделям происходит через метод behaviors() базового класса Yii framework CActiveRecord и СModel.

Контроллеры - объект класса создается объектом веб-приложения в случае, когда пользователь его запрашивает. При запуске контроллер выполняет соответствующее действие, что обычно подразумевает создание соответствующих моделей и отображение необходимых представлений. В самом простом случае действие -- это метод класса контроллера, название которого начинается на action.

Действия - как было упомянуто выше, действие -- это метод, имя которого начинается на action(пример actionIndex() - выполнит действие index.). Более продвинутый способ -- создать класс действия и указать контроллеру создавать экземпляр этого класса при необходимости (переопределить метод actions()). Такой подход позволяет использовать действия повторно.

Расширения - как правило это один или несколько классов, решающих одну задачу. Расширения были разработаны с целью их повторного использования в нескольких проектах.

Делись добром ;)