Java как центр архипелага - [2]

Шрифт
Интервал

по карману.

Сети персональных компьютеров существенно  дешевле  централизо-

ванных систем, они оставляют за поставщиком необходимую свободу

управления  информацией,  однако потребителям приходится искать

необходимые данные на множестве  машин,  среди  большого  числа

приложений (рис. 4).

Рис. 4. Получение информации из сети персональных компьютеров

Рядовому  пользователю  работать в такой разнородной прикладной

среде крайне неудобно.

Способ разрешения указанных проблем, к которому прибегают веду-

щие компании, состоит в построении информационной структуры ор-

ганизации по образу и подобию Интернет, с  Web-сервисом  в  ка-

честве концептуальной основы (рис. 5).

Рис. 5. Универсальный клиент Web-сервиса

Возможность  хранения  данных  различных типов (текст, графика,

аудио, видео) в сочетании с механизмами связывания  информации,

расположенной в разных узлах компьютерной сети, позволяют расс-

редотачивать  информацию в соответствии с естественным порядком

ее создания и потребления, осуществлять  единообразный  доступ,

отправляясь  от  небольшого числа известных "корней". Тем самым

поставщик может эффективно готовить и  контролировать  информа-

цию, а потребитель в состоянии без труда найти необходимые дан-

ные именно тогда, когда они стали нужны.

Средства  Web,  помимо  связывания  распределенных данных, осу-

ществляют еще одну очень важную функцию. Они позволяют рассмат-

ривать информацию с нужной степенью детализации, что существен-

но упрощает анализ больших об®емов данных. Можно  быстро  отоб-

рать  самое  интересное,  а затем изучить выбранный материал во

всех подробностях.

Таким образом, Web-серверы и Web-навигаторы могут и должны  ис-

пользоваться не только в "мировом масштабе". Web - это инфраст-

руктурный сервис, необходимый каждой организации со сколько-ни-

будь заметными информационными потоками.

В  то  же время, Web-сервису присущи и определенные недостатки,

вытекающие из отсутствия состояний в HTTP-протоколе. Во-первых,

клиент по существу лишен средств управления внешним представле-

нием об®ектов на  просматриваемой  WWW-странице  (единственное,

что он может сделать, это сменить WWW-навигатор).

Во-вторых,  Web-страницы  статичны. При использовании протокола

HTTP, на клиентскую систему передаются только пассивные данные,

но не методы об®ектов. Из общих соображений очевидна ограничен-

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

с первым. Об®ект сам должен знать, как себя показывать - точнее

говоря,  он должен это выяснить, проанализировав клиентское ок-

ружение.

В-третьих, Web-сервис обладает весьма ограниченными интерактив-

ными возможностями, которые сводятся к заполнению пользователем

чисто текстовых форм с последующей отправкой на  сервер.  Такая

форма общения вполне устраивала пользователей терминалов ЕС ЭВМ

лет 15 назад. Сейчас ее явно недостаточно.

Java-технология  позволяет устранить все отмеченные недостатки.

Как именно - будет ясно из последующего изложения. В результате

Web-сервис, и без того имевший огромную  популярность,  получил

как  бы новый импульс. Этот экспресс понесся вперед с удвоенной

скоростью, увлекая за собой и Java.


3. Java, Joe, NEO

В узком смысле слова Java - это об®ектно-ориентированный  язык,

напоминающий  C++,  но более простой для освоения и использова-

ния. В более широком смысле Java - это целая  технология  прог-

раммирования,  изначально рассчитанная на интеграцию с Web-сер-

висом, то есть на использование в сетевой среде, Поскольку Web-

навигаторы существуют практически для всех  аппаратно-программ-

ных платформ, Java-среда должна быть как можно более мобильной,

в идеале полностью независимой от платформы.

С  целью решения перечисленных проблем были приняты, помимо ин-

теграции с Web-навигатором, два других важнейших постулата.

- Была  специфицирована  виртуальная  Java-машина,  на  которой

должны выполняться (интерпретироваться) Java-программы. Опреде-

лены  архитектура, представление элементов данных и система ко-

манд Java-машины. Исходные  Java-тексты  транслируются  в  коды

этой машины. Тем самым, при появлении новой аппаратно-программ-

ной  платформы в портировании будет нуждаться только Java-маши-

на; все программы, написанные на Java, пойдут без изменений.

- Определено, что при редактировании внешних связей  Java-прог-

раммы  и  при работе Web-навигатора прозрачным для пользователя

образом может  осуществляться  поиск  необходимых  об®ектов  не

только на локальной машине, но и на других компьютерах, доступ-

ных  по  сети  (в частности, на WWW-сервере). Найденные об®екты

загружаются, а их методы выполняются затем на машине  пользова-

теля.

Несомненно, между двумя сформулированными положениями существу-

ет  тесная связь. В компилируемой среде трудно дистанцироваться

от аппаратных особенностей компьютера, как трудно (хотя и  мож-

но)  реализовать  прозрачную  динамическую  загрузку по сети. С

другой стороны, прием об®ектов извне требует  повышенной  осто-

рожности при работе с ними, а, значит, и со всеми Java-програм-

мами. Принимать необходимые меры безопасности проще всего в ин-

терпретируемой,  а не компилируемой среде. Вообще, мобильность,


Рекомендуем почитать
Изучаем Java EE 7

Java Enterprise Edition (Java EE) остается одной из ведущих технологий и платформ на основе Java. Данная книга представляет собой логичное пошаговое руководство, в котором подробно описаны многие спецификации и эталонные реализации Java EE 7. Работа с ними продемонстрирована на практических примерах. В этом фундаментальном издании также используется новейшая версия инструмента GlassFish, предназначенного для развертывания и администрирования примеров кода. Книга написана ведущим специалистом по обработке запросов на спецификацию Java EE, членом наблюдательного совета организации Java Community Process (JCP)


Pro Git

Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


Фундаментальные алгоритмы и структуры данных в Delphi

Книга "Фундаментальные алгоритмы и структуры данных в Delphi" представляет собой уникальное учебное и справочное пособие по наиболее распространенным алгоритмам манипулирования данными, которые зарекомендовали себя как надежные и проверенные многими поколениями программистов. По данным журнала "Delphi Informant" за 2002 год, эта книга была признана сообществом разработчиков прикладных приложений на Delphi как «самая лучшая книга по практическому применению всех версий Delphi».В книге подробно рассматриваются базовые понятия алгоритмов и основополагающие структуры данных, алгоритмы сортировки, поиска, хеширования, синтаксического разбора, сжатия данных, а также многие другие темы, тесно связанные с прикладным программированием.


Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.


Как пасти котов. Наставление для программистов, руководящих другими программистами

«Как пасти котов» – это книга о лидерстве и руководстве, о том, как первое совмещать со вторым. Это, если хотите, словарь трудных случаев управления IT-проектами. Программист подобен кошке, которая гуляет сама по себе. Так уж исторически сложилось. Именно поэтому так непросто быть руководителем команды разработчиков. Даже если вы еще месяц назад были блестящим и дисциплинированным программистом и вдруг оказались в роли менеджера, вряд ли вы знаете, с чего надо начать, какой выбрать стиль руководства, как нанимать и увольнять сотрудников, проводить совещания, добиваться своевременного выполнения задач.