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

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

динамизм и безопасность - спутники интерпретатора, а не  компи-

лятора.

Принятые  решения сделали Java-среду идеальным средством разра-

ботки клиентских компонентов Web-систем. Особо отметим прозрач-

ную для пользователя динамическую загрузку об®ектов по сети. Из

этого вытекает такое важнейшее достоинство, как  нулевая  стои-

мость  администрирования клиентских систем, написанных на Java.

Достаточно обновить версию об®екта на сервере, после чего  кли-

ент  автоматически  получит именно ее, а не старый вариант. Без

этого реальная работа с развитой сетевой инфраструктурой  прак-

тически  невозможна. С другой стороны, при наличии динамической

загрузки  действительно  возможно  появление  устройств  класса

Java-терминалов,  изначально содержащих только WWW-навигатор, а

все остальное (и программы, и данные) получающих по сети.

Здесь уместно отметить замечательную точность в выборе основных

посылок проекта Java. Из минимума предположений вытекает макси-

мум новых возможностей при сохранении практичности реализации.

В то же время, интеграция с WWW-навигатором и  интерпретируемая

природа  Java-среды ставят вполне определенные рамки для реаль-

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

не  менее  универсален,  чем, скажем, C++). Например, известно,

что интерпретация, по сравнению с прямым выполнением,  примерно

на  полтора  порядка медленнее. Трудно сказать, насколько могут

улучшить положение компиляция "на лету" и использование специа-

лизированных Java-процессоров, но пока  использование  Java  на

серверной стороне представляется проблематичным.

Далее,  хотя  технология  Интранет, основанная на использовании

Web-сервиса в качестве информационной основы организации, явля-

ется огромным шагом вперед, существуют и  другие  сервисы,  как

унаследованные, так и современные (например, реляционные СУБД),

которые  обязательно должны входить в состав корпоративной сис-

темы. Если вся связь между клиентами  и  упомянутыми  серверами

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

местом, а решения Интранет рискуют лишиться  такого  важнейшего

достоинства,  как  масштабируемость.  Значит, необходима прямая

связь между клиентскими системами, написанными на языке Java, и

произвольными сервисами (рис. 6).

Рис. 6. Прямая связь между Java-клиентами и корпоративными сер-

верами.

Как реализовать такую связь?

В общем виде ответ очевиден - нужны  средства  для  полноценной

интеграции  Java в распределенную об®ектную среду. На серверной

стороне компания Sun Microsystems имеет соответствующую  техно-

логию  -  NEO  (NEtworked Objects, сетевые об®екты). Технология

NEO удовлетворяет спецификациям COъBA  (Common  Object  ъequest

Broker  Architecture),  являющимся промышленным стандартом. При

реализации корпоративных информационных систем с использованием

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

ровневой  архитектуры  с  серверами приложений, построенными на

об®ектных принципах, на втором уровне и с базовыми и  унаследо-

ванными серверами на третьем уровне (рис. 7).

Рис.  7. Трехуровневая архитектура корпоративной информационной

системы.

К сожелению, столь общий ответ никак не  помогает  осуществлять

прямую связь между Java-клиентом и NEO-сервером. Конечно, можно

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

тевой среде (а Java допускает использование библиотек, написан-

ных на C/C++, равно как и вставку машинных кодов), но если  это

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

уровне "оживлялок" для MS-Windows. В конце марта 1996 года ком-

пания SunSoft об®явила о появлении  нового  продукта  с  именем

Joe,  как  раз  и предназначенного для существенного облегчения

встраивания Java-клиентов в  информационные  системы  Интранет,

построенные  в трехуровневой архитектуре с использованием среды

NEO (рис. 8).

Рис. 8. Распределение ролей между Java, Joe и NEO.

Таким образом, сложилась полная и изумительно красивая  картина

организации  современных  Интранет-систем.  В  данной статье мы

уделим основное внимание технологии Java.  Далее  будет  кратко

рассмотрены возможности, предоставляемые системой Joe.


        4. Java - язык и технология

        * 4.1. Язык Java

При описании языка Java будет предполагаться, что читатель, хо-

тя бы в общих чертах, знаком с языком C++.

          4.1.1. Об®ектная модель языка Java

Когда  говорят об об®ектно-ориентированном языке программирова-

ния, предполагают поддержку трех механизмов:

- инкапсуляция

- наследование

- полиморфизм.

Инкапсуляция и наследование в языке Java реализуются с  помощью

понятия класса.

            4.1.1.1. Классы

Понятие класса в языках Java и C++ очень близки. Класс является

шаблоном для создания об®ектов; он может содержать данные и ме-

тоды.  Приведем  пример  класса, описывающего точки в двумерном

пространстве (здесь и далее номера строк используются для  пос-

ледующих пояснений и не являются частью Java-программ).

1     class Point extends Object {

2       private double x;

3       private double y;

4       Point (double x, double y) {

5         this.x = x;

6         this.y = y;


Рекомендуем почитать
Программирование приложений для мобильных устройств под управлением Android. Часть 1

Книга посвящена разработке программ для мобильных устройств под управлением операционной системы Android. Рассматривается создание приложений с использованием системных компонентов и служб Android. Приведены базовые данные о структуре приложений, об основных классах и их методах, сопровождаемые примерами кода. Часть 1 содержит шесть глав, описывающих основные принципы создания приложений, пользовательский интерфейс, полномочия приложений, а так же базовые классы: Activity, Intent, Fragment. Книга предназначена для программистов, владеющих языком программирования Java и желающих освоить написание приложений, работающих под ОС Android.


Симуляция частичной специализации

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


Платформа J2Me

Эта книга научит вас, как разрабатывать программное обеспечение для платформы J2ME компании «Sun Microsystems». Эта книга придерживается стиля учебного пособия, это не справочное руководство.Цель — дать вам твердую основу в понятиях и техниках, которая даст вам возможность решиться на самостоятельную разработку качественных приложений.


Обработка баз данных на Visual Basic.NET

Это практическое руководство разработчика программного обеспечения на Visual Basic .NET и ADO.NET, предназначенное для создания приложений баз данных на основе WinForms, Web-форм и Web-служб. В книге описываются практические способы решения задач доступа к данным, с которыми сталкиваются разработчики на Visual Basic .NET в своей повседневной деятельности. Книга начинается с основных сведений о создании баз данных, использовании языка структурированных запросов SQL и системы управления базами данных Microsoft SQL Server 2000.


Исчерпывающее руководство по написанию всплывающих подсказок

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


Создаем порт для FreeBSD своими руками. Часть II

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