Среда беспроводного приложения
На уровне приложений внешние интерфейсы, программные интерфейсы и транспортные механизмы представляют один из видов описания системы. В подобном ракурсе рассмотрения заинтересованы разработчики приложений, которые должны знать, как получать доступ и как взаимодействовать со службами программного обеспечения системы.
В других ракурсах описываются другие части системы. Например, системы имеют модели состояний, модели обработки транзакций и так далее, которые не могут быть в достаточной мере описаны с помощью диаграммы, представленной на рисунке 11.1. На некотором этапе процесса разработки приложения разработчикам необходимо знать эти характеристики систем, с которыми они взаимодействуют.
На рисунке 11.2 представлена схематичная логическая диаграмма, на которой показаны типичные компоненты системного уровня, находящиеся в системах беспроводного Интернета. На диаграмме представлены некоторые из наиболее часто используемых механизмов транспортировки, которые соединяют компоненты между собой. Цель данной диаграммы - дать разработчикам некоторый ракурс рассмотрения типов сред, которые поддерживают беспроводные приложения.
Среда, показанная на рисунке 11.2, является той, в которой беспроводные приложения устанавливаются и запускаются. Эти приложения включают не только приложения телефонов - такие, как приложения МID, - но также серверные компоненты, которые поддерживают службы, используемые приложениями на телефоне.
Серверные беспроводные приложения будут находиться внутри сети intranet транспортировщика. Они обычно состоят из нескольких систем аппаратных и программных компонентов, каждая из которых предоставляет собой одну или несколько служб приложений. Некоторые из этих служб приложений будут вести себя как стандартные основанные на Web приложения и предоставлять HTML-интерфейс, который требует браузера с клиентской стороны.
Платформа J2ME, и MIDP в частности, создают платформу, которая поддерживает так называемых интеллектуальных клиентов. Они могут быть приблизительно определены как приложения, которые выполняют значительно больший объем обработки на клиенте, чем Web-приложения. Огромное количество приложений MIDP будет приложениями клиент-сервер или распределенными приложениями, взаимодействующими с компонентами клиент-сервер. Эти приложения M1DP будут взаимодействовать с системами, которые находятся в сети intranet беспроводного транспортировщика.
Например, приложениям MIDP клиент- сервер или распределенным требуются возможности организации сети и коммуникаций для того, чтобы получать доступ к серверным компонентам в сети intranet транспортировщика. Хотя платформа MIDP скрывает подробности абстракций и реализации механизмов коммуникации, о которых вы узнали в главе 8, полезно иметь представление о том, как системы поддерживают различные службы.
Большая часть Интернета стандартизирована на HTTP как на основном транспортном механизме сеансового уровня. Протоколы уровня приложений туннелируются при помощи HTTP, что связано с вопросами безопасности. Рисунок 11.2 отражает эту архитектуру между intranet, Интернет и пользовательскими объектами.
Беспроводная сеть, однако, ставит некоторые уникальные проблемы. Беспроводные сети используют сложные наборы собственных протоколов, которые представляют собой решения практических проблем реализации организации межсетевого обмена между беспроводными интерфейсами. Эти собственные наборы развиваются параллельно совершенствованию беспроводных систем и их продвижению к поддержке TCP/IP на телефонных трубках в системах третьего поколения (3G). Тем не менее, уровни, лежащие под сетевым уровнем, все еще очень отличаются от уровней, расположенных в проводных сетевых комплексах.
Рисунок 11.2. Интерфейсы и транспортные механизмы среды беспроводного Интернета влияют на выбор разработчиками технологий и осуществимость определенных программных разработок
Разработчики приложений должны знать интерфейсы, программные интерфейсы, механизмы транспортировки, характеристики и возможности служб в средах беспроводного Интернета. Эти службы предоставляют механизм, который поддерживает клиентские приложения.
Для каждого приложения разработчикам придется оценивать среду, инструменты и возможности, доступные для того, чтобы определять не только то, является ли понятие приложения осуществимым, но также и то. какие из множества потенциальных разработок имеют наибольший смысл при существующих ограничениях и сдерживающих факторах технологии.
Некоторые из теоретических подходов к разработке, описываемых в данном разделе, не осуществимы в реальности в средах беспроводного Интернета и платформы J2ME, доступных во время написания данной книги. Тем не менее, данные описания отражают перспективы развития области беспроводного Интернета, так что приложения этих понятий будут осуществимы в системах следующего поколения.
Более интересен для разработчиков MIDP набор протоколов над транспортным уровнем. Существует два основных небора. Первый использует протокол WAP, использование которого горячо отстаивается во многих современных беспроводных Web-системах. По причинам, связанным с практической разработкой, WAP транспортирует содержимое, форматированное на языке разметки для беспроводных систем (wireless markup language (WML)). Второй подход, который, вероятно, будет принят в системах 3G, транспортирует XHTML/XML через HTTP. Кроме того, протоколы уровня приложений могут быть туннелированы с помощью HTTP.