Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП / ООП / ры_приложений_полная_книга.pdf
Скачиваний:
500
Добавлен:
18.02.2017
Размер:
7.08 Mб
Скачать

Более подробно методики валидации рассматриваются в главе 17, «Сквозная функциональность».

Вопросы проектирования слоев

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

Слой представления

Слой представления Веб-приложения обеспечивает отображение UI и взаимодействие с пользователем. Дизайн должен разделять функциональные области, т.е. логика взаимодействия с пользователем должна быть отделена от компонентов UI. В сложных интерфейсах используйте отдельные компоненты UI и компоненты логики представления, и по возможности создавайте компоненты UI на базе стандартных элементов управления Веб. Элементы управления могут быть скомпилированы в сборку для повторного использования в других приложениях или в случае необходимости введения дополнительных функций в существующие серверные элементы управления.

Слой представления Веб-приложения состоит из серверных компонентов (которые формируют визуальное отображение HTML) и клиентских компонентов (браузер или агент пользователя, которые выполняют сценарии и отображают HTML). Как правило, вся логика представления располагается в серверных компонентах, а клиентские компоненты только отображают HTML. Такие клиентские технологии, как AJAX, позволяют выполнять логику на клиенте. Обычно это делается для улучшения взаимодействия с пользователем, но для этого требуются дополнительная разработка и тестирование. Если принято решение выполнять какую-то проверку на стороне клиента, не забудьте продублировать эту же проверку на сервере, поскольку любая валидация на клиенте может быть подделана.

Бизнес-слой

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

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

Соседние файлы в папке ООП