OpenCart — от новичка до профессионала: Теория MVC

OpenCart — от новичка до профессионала: Теория MVC

От автора: в предыдущей статье мы рассмотрели основные принципы построения приложений OpenCart. Сегодня мы продолжим рассмотрение шаблона проектирования, используемого OpenCart MVC, и даже напишем собственный контроллер. Прежде чем изучать архитектуру кода в OpenCart, мы сначала рассмотрим архитектуру Модель-Представление-Контроллер (MVC).

Что такое MVC?

Архитектура MVC широко используется в современном веб-программировании. Многие из популярных фреймворков используют MVC; однако это не приложение, это шаблон проектирования — предписанное решение общей проблемы, организованное в коде. Данный шаблон проектирования также известен, как архитектурный шаблон. MVC можно рассматривать как архитектуру на основе уровней. То есть контроллер, модель и представление представляют собой три уровня, каждый из которых связан с другими.

Контроллеры

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

Модели

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

Представления

Представление — это последний уровень архитектуры MVC, который содержит пользовательский интерфейс программы. В веб-приложениях представление содержит коды HTML, CSS, JavaScript, XML или JSON и т. д. Представление является видимым для пользователя уровнем, тогда как модели и контроллеры скрыты от пользователя. Давайте смоделируем в виде беседы ситуацию, когда пользователь переходит по определенному URL-адресу:

Контроллер: Эй, модель ABC: пользователю нужны данные XYZ, пожалуйста, передайте их мне.

Модель: Держи данные XYZ! Вот.

Контроллер: Эй, представление ABC, я передаю тебе данные XYZ.

Представление: Отображает информацию на странице для просмотра пользователем.

MVC в OpenCart

Контроллеры. Как было сказано, контроллер является первым уровнем архитектуры MVC. Итак, давайте рассмотрим это в контексте нашего сайта. Мы создадим новый контроллер, чтобы вы лучше поняли этот предмет. Создайте пустую папку test в каталоге контроллеров, т.е. catalog/controller/test.

Создайте PHP-файл abc.php в папке test, то есть catalog/controller/test/abc.php. Измените файл abc.php в своей IDE и добавьте в него следующий код:

В приведенном выше примере отображены некоторые ограничения OpenCart Framework, которым программист должен следовать неуклонно.

Имя класса контроллера должно быть следующим — Controller(ИмяПапки)(ИмяФайла). Помните: первая буква, относящаяся к имени папки и имени файла должна быть в верхнем регистре, в имя класса не включается расширение файла.

index() — это основная функция, которая выполняется автоматически при вызове контроллера

Функция index() должна быть публичной.

Не используйте в контроллере HTML-, JavaScript- или CSS-код.

Теперь в браузере откройте URL-адрес: //localhost/Opencart/index.php?route=test/abc

Заключение

Бинго! Вы создали свой первый контроллер. Контроллер — это первый и самый важный уровень MVC, поскольку MVC может существовать без модели и представления, но без контроллера — нет. В нашей следующей статье мы будем создавать модели и представления, а также рассмотрим параметр маршрута относительно контроллера. Надеюсь, вам понравилась эта статья. Всего наилучшего!

Автор: Zaman Riaz

Источник: //code.tutsplus.com/

Редакция: Команда webformyself.

Метки:

Похожие статьи:

Комментарии Вконтакте: