1.1. С чего состоит Joomla
Прежде чем приступить к практическим урокам, давайте напомним, из чего состоит Joomla. CMS Joomla имеет следующие основные части:
- Компоненты, модули и плагины – это расширения функционала CMS, которые можно разделить на встроенные (компонент публикаций, поиск, новостной модуль) и сторонние расширения (галерея JoomGallery или компонент JoomlaPack)
- Исходный код ядра и библиотеки Joomla – основные файлы, обеспечивающие API для выполнения системных функций
- Сторонние библиотеки – это дополнительные библиотеки, использование которых позволяет расширить функционал Joomla. Это может быть библиотека парсинга XML-файлов DOMIT, библиотеки GD2, imagemagick, jquery и др.
- Конфигурационный файл – configuration.php, который обеспечивает хранение основных характеристик и глобальных переменных, необходимых для корректной работы Joomla.
- Языковые файлы, обеспечивающие первичную локализацию Joomla.

1.2. Как работает Joomla
Теперь, для лучшего понимания уроков, давайте рассмотрим основы функционирования Joomla 1.5. Современный движок Joomla 1.5 работает на основе структуры «Модель - вид (представление) - контроллер» (Model-View-Controller). Model-View-Controller (MVC) - это такая структура проекта, которая организована код таким образом, что логика и представление данных есть отдельными один от одного (рис. 1.1). С помощью такой схемы можно создавать гибкие легко расширяемые приложения с пользовательским интерфейсом. Эта структура была разработана создателями Smalltalk-80 в 1980 г.  Давайте подробно остановимся на описании элементов MVC, которые в Joomla осуществляется с использованием трех классов: JModel, JView, JController.
Модель (Model)
Модель (Бизнес модель, Model) – это элемент MVC, который предоставляет данные для View (Представление), а также реагирует на запросы от контроллера, изменяя свое состояние. Модель есть частью компонента, которая включает в себя такие функции, как puplished, reorder, new, edit, save, move.
Представление (View )
Представление (View ) — это элементы пользовательского интерфейса, с помощью которых генерируются HTML страницы вывода данных с отдельным шаблоном интерфейса. Использование шаблона для View очень удобно для дизайнерского оформления. View не изменяет данные, он только отображает их. Поэтому View может быть изменен в любое время.
Контроллер (Controller)
Контроллер - это обработчик действий пользователя (браузера на стороне клиента). Контроллер в зависимости от запроса, будет вызывать модель для управления данными и переходом Модели на View. Таким образом контроллер вызывает модель, которая изменяет данные, а затем передает модель в View, который отображается на экране.
- Использование принципа MVC имеет следующие преимущества:
- Удобство групповой работы над проектом;
- Устранение зависимости между различными частями проекта;
- Улучшенное качество получаемого кода;
- MVC позволяет избежать зависимости модели от интерфейса;
- Возможность повторного использования кода без его изменения;
- Работоспособность компонента при изменении интерфейса Joomla 1.5.
Теперь приступим к второму уроку, где Вы создадите простой компонент view-controller для CMS Joomla 1.5 и реализуете код вывода приветствия «Hello!».
Предыдущие уроки по Основах программирования для Joomla 1.5:
Введение |