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

Архетипы приложений

В данном разделе руководства представлены темы, которые помогут понять возможности, свойства, преимущества и недостатки всех доступных общих типов приложений. Рассмотрение начинается с обзора базовых типов приложений, таких как Веб-приложение, мобильное приложение, насыщенный клиент, сервисы и RIA. В остальных главах каждый из типов описывается более подробно. Также обсуждаются специальные типы приложений, такие как размещаемые сервисы и сервисы в облаке, а также приложения SharePoint и Microsoft Office. Раздел включает следующие главы:

Глава 20 «Выбор типа приложения»

Глава 21 «Проектирование Веб-приложений»

Глава 22 «Проектирование насыщенных клиентских приложений»

Глава 23 «Проектирование насыщенных Интернет-приложений»

Глава 24 «Проектирование мобильных приложений»

Глава 25 «Проектирование сервисных приложений»

Глава 26 «Проектирование размещаемых сервисов и сервисов в облаке»

Глава 27 «Проектирование офисных бизнес-приложений»

Глава 28 «Проектирование LOB-приложений SharePoint»

20

Выбор типа приложения

Обзор

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

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

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

Обзор архетипов приложений

Рассмотрим основные базовые типы приложений:

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

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

элементов управления. Насыщенные клиентские приложения могут поддерживать сценарии без подключения или без постоянного подключения, если должны выполнять доступ к удаленным данным или функциональности.

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

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

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

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

Типы приложений

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

Тип приложения

 

Преимущества

 

Недостатки

 

 

 

 

 

Мобильные приложения

 

Поддержка портативных

 

Ограниченные возможности

 

 

устройств.

 

ввода и навигации.

 

 

Доступность и простота

 

Ограниченная область

 

 

использования для мобильных

 

отображения экрана.

 

 

пользователей.

 

 

 

 

Поддержка сценариев без

 

 

 

 

подключения и сценариев без

 

 

 

 

постоянного подключения.

 

 

 

 

 

 

 

Насыщенные клиентские

 

Возможность использования

 

Сложность развертывания; при

приложения

 

ресурсов клиента.

 

этом широкий выбор вариантов

 

 

Лучшее время отклика,

 

установки, таких как ClickOnce,

 

 

 

 

 

 

насыщенная функциональность

 

Windows Installer и XCOPY.

 

 

 

 

 

 

UI и улучшенное взаимодействие

 

Сложности обеспечения

 

 

с пользователем.

 

совместимости версий.

 

 

Очень динамичное

 

Зависимость от платформы.

 

 

взаимодействие с коротким

 

 

 

 

временем отклика.

 

 

 

 

Поддержка сценариев без

 

 

 

 

подключения и сценариев без

 

 

 

постоянного подключения.

 

 

 

 

Насыщенные Интернет-

Такие же насыщенные

Больший объем памяти,

приложения (RIA)

возможности пользовательского

занимаемый на клиенте, по

 

интерфейса, как и для

сравнению с Веб-приложением.

 

насыщенных клиентов.

Ограниченное использование

 

 

 

Поддержка насыщенных и

ресурсов клиента по сравнению с

 

потоковых мультимедиа и

насыщенным клиентским

 

графики.

приложением.

 

Простота развертывания с

Необходимость развертывания

 

возможностями распределения

на клиенте подходящей среды

 

(насыщенными) такими же, как и

выполнения.

 

для Веб-клиентов.

 

 

Простота обновления и смены

 

 

версий.

 

 

Поддержка различных платформ

 

 

и браузеров.

 

 

 

 

Сервисные приложения

Слабо связанное

Отсутствие поддержки UI.

 

взаимодействие между клиентом

Зависимость от возможности

 

 

 

и сервером.

сетевого подключения.

 

 

 

Могут использоваться

 

 

различными и

 

 

невзаимосвязанными

 

 

приложениями.

 

 

Поддержка для обеспечения

 

 

возможности взаимодействия.

 

 

 

 

Веб-приложения

Широко доступный и основанный

Необходимость устойчивого

 

на стандартах UI,

сетевого подключения.

 

поддерживаемый на многих

Сложно обеспечить насыщенный

 

 

 

платформах.

пользовательский интерфейс.

 

 

 

Простота развертывания и

 

 

внесения изменений.

 

 

 

 

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

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

Мобильное приложение

Насыщенное клиентское приложение

Насыщенное Интернет-приложение

Сервис

Веб-приложение

Вданном руководстве также рассматриваются более специализированные типы приложений:

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