En

JazzTeam Software Development Company

Agile Java Development

Основная структура MVC приложения на ExtJS

Библиотека ExtJS

ExtJS - библиотека JavaScript для разработки веб-приложений и пользовательских интерфейсов. Поддерживает технологию AJAX, анимацию, работу с DOM, реализацию таблиц, вкладок, обработку событий. Официальный сайт библиотеки.

Структура приложения

structure

Архитектура приложений ExtJS базируется на основании MVC шаблона.

extjs-mvc
Model - представляет собой некоторый тип данных в приложении. В самом простом случае модель является набором полей и данных. В модели выделяют четыре составные части: поля (Fields), прокси (Proxy), ассоциации (Associations) и валидаторы (Validations).

ext-data-model
Поля (Fields)
Поля модели описываются в свойстве fields, представляющую собой массив, каждое поле описывается в виде JS объекта, который имеет атрибуты имя (name) и тип (type).

Прокси (Proxy)
Прокси используются хранилищами и выполняют функции по загрузке и сохранению данных модели. Различают два вида прокси:

Ассоциации (Associations)
Модели могут быть связаны друг с другом. Даже самое небольшое приложение может иметь множество моделей, и имеется возможность создавать зависимости между этими моделями. Имеется возможность создавать следующие ассоциации:

Валидаторы (Validations)
Валидаторы представляют собой специальные конструкции которые позволяют проверять на “правильность” данные, хранящиеся в определенном поле модели. ExtJS содержит некоторое множество стандартных валидаторов. Наиболее часто используемыми являются валидаторы проверяющие минимальную или максимальную допустимую длину поля.

Хранилище (Store)
Store это хранилище предназначено для хранения множества объектов определенной модели. Чтобы создать свое собственное хранилище, необходимо наследоваться от стандартного хранилища ExtJS которое располагается в пакете Ext.data.Store.
Хранилище может хранить экземпляры только одной определенной модели, отсюда следует, что каждой модели соответствует отдельный объект хранилища.

Представление (View)
За визуальную часть или интерфейс пользователя отвечают представления.
Представления состоят из компонентов (Component) и схем размещения этих компонентов (Layout). Каждый компонент может выступать в роли контейнера для другого компонента что позволяет описывать интерфейс приложения в виде иерархического множества представлений.

View

В состав ExtJS входят следующие схемы размещение компонентов:

Контроллер (Сontroller)
Контроллер является ключевым звеном, который связывает все части приложения воедино и заставляет их работать.
В контроллере описываются действия, логика приложения. Для написания своего контролера нужно наследоваться от базового контроллера Ext.app.Controller. Контроллер инициализирует обработчики событий представлений, все представления содержат некоторые общие базовые события:

Полезные ссылки:

, ,

Leave a Reply

Your email address will not be published. Required fields are marked *