"Computer Newspaper" - "Компьютерная Газета", October 1999.

Register now - Попробуй заработать
Get your 39$ - Получи чек! | FREE web site and $20 cash over & over!

At title page - НаверхReturn at title page - Возврат на основную страницу

Остров Ява, где смыкаются границы континентов.

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

Это было пришествие Java. Маленький остров в огромном океане дал имя технологии, которой суждено изменить будущее Сети. Статичные HTML-страницы и, в лучшем случае, запросы к серверу через CGI-шлюз, перестали вызывать прежний восторг – они стали обыденными, потому что исчерпали свой потенциал, даже несмотря на всевозможные расширения. Теперь облик Internet ограничивался лишь фантазией программистов, применяющих Java.

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

Действительно, вопросы, что выбрать в качестве основы – рабочие станции Sun на базе UltraSPARC или машины с Intel Pentium III, операционную систему Linux или MS Windows NT – уже не так остро ограничивают разработчиков и пользователей. Все популярные платформы поддерживают Java, и на каждой появляются всё более совершенные средства разработки и выполнения Java-программ.

Java, в переносном смысле, это остров в бушующем океане Internet, который дал твёрдую почву программистам и объединил всех пользователей, независимо от их принадлежностей различным компьютерным континентам – Sun (ОС Solaris и процессор UltraSPARC), Intel & Microsoft (ОС Windows и процессор Pentium III), Apple (MacOS и процессор PowerPC) и т. д.…

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

И дело здесь не столько в технологии, сколько в консервативности web-мастеров и пользователей Internet – учёба чему-то новому требует трудозатрат.
Например, все подтвердят, что сегодня популярнейшей средой разработки приложений для систем Windows является Delphi. И при этом все согласятся, что успехом своим он обязан многолетней истории развития компиляторов Turbo Pascal.

У Java ситуация немного сложнее. Да, он очень похож на C++, однако новая технология не терпит компромиссов, – его объектно-ориентированная структура полностью исключает традиционный процедурный подход. Для посредственных программистов, не владеющих навыками ООП это является непреодолимым препятствием. Кроме того, сама новизна и многообразие технологии Java являются препятствием для начинающих программистов, которым поначалу трудно «врубиться», что есть апплет, что есть сервлет, а что есть приложение.

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

Непременно посетите www.gamelan.com – старейшая и популярнейшая библиотека апплетов, а также узел создателя Java – корпорации Sun Microsystems – www.sun.com и её дочерней компании – JavaSoft – www.javasoft.com, которая только и делает, что совершенствует Java и разрабатывает новые приложения. Только не забудьте предварительно установить поддержку Java в настройках Вашего браузера. Для MSIE 4.0 это можно сделать в Панели Управления – «Интернет/ Дополнительно/ Виртуальная машина Java». Чтобы включить полную поддержку Java отметьте все пункты в этом разделе – тогда Ваш браузер сможет беспрепятственно запускать апплеты на web-страницах. Множество ссылок на «крутые» сайты, использующие Java, и кучу новостей ищите на сервере корпорации Mantis - разработчика Java-программ или прямо на поисковых машинах по запросам типа: "Java applet source".

Что же конкретно даёт технология Java?
Во-первых, её программы имеют доступ ко всем ресурсам Internet и могут обрабатывать их информацию так, как Вы пожелаете. Например, в корпоративных сетях можно организовать передачу данных с сервера на клиента и обратно с одновременной их обработкой и на клиенте, и на сервере. На клиентской машине для этого потребуется лишь браузер, поддерживающий Java, и никаких проблем c установкой и настройкой клиентского ПО. Причём, эта схема будет работать в разнородной сети, где Web-сервер работает на процессоре Alpha, а клиентами, кроме обычных PC, являются ещё и компьютеры Apple PowerMac. Подобные проекты уже внедряются в корпоративных сетях крупных разветвлённых организаций у нас в Беларуси – своими глазами видел.

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

И, в-третьих, всевозможная анимация, которая намного разнообразнее, приятнее и красивее обычной GIF-анимации. И дополнительно получим большой выигрыш в объёме перекачиваемых файлов, а значит и в скорости работы в Сети.
На этом моменте можно остановиться подробнее, т. к. это доступно для понимания всем пользователям, и результат можно наблюдать воочию. (См. также
JavaComes - Пришествие Java)

Ведь неплохие ролики можно создать и в GIF-анимации. Но какого объема получится в результате GIF-файл? Килобайт 10 минимум, как правило, больше. Допустим, мы сделали 10 заголовков для своих страниц на сайте в виде GIF-анимации - займет ни много, ни мало - 100 Кб.

Java-анимация, чаще всего, выполняется в виде апплетов, которые выводят графические изображения в указанной части web-страницы. Для несведущих объясню попроще – апплет – это программа, встроенная в HTML-страницу и работающая внутри её. Апплетам, как и любым другим программам, можно передавать параметры – они указываются в HTML-коде страницы. Так вот, базовый апплет текстовой анимации на www.VictoryDay.web.com имеет размер всего-навсего 4 Кб.

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

Хотите разнообразия - пожалуйста. На базе такого апплета легко разработать другой, с оригинальной дополнительной анимацией. На других страничках сайта используются апплеты – наследники базового и содержат в себе лишь код, реализующий дополнительное анимирование текста. Их объем – от 736 БАЙТ до 3 Кб! При выполнении браузер самостоятельно загрузит базовый апплет из своего кэша. Ну, как вам?

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

Для включения имеющихся в наличии апплетов в состав HTML-страницы воспользуйтесь стандартными средствами – MS FrontPage или Netscape Composer. Не вдаваясь в детали, скажу, что они позволяют правильно разместить апплет и указать его параметры.

Основным конкурентом Java стала технология ActiveX – наследник OLE. У неё тоже есть свои немалые достоинства, кроме одного – ничто не ограничивает ActiveX-компонент в действиях на клиентской машине. И никто не запретит мне, например, создать компонент, который кроме полезной работы втайне от всех будет воровать секретную информацию. Или нарушить работоспособность самого клиентского компьютера какого-нибудь 26-го апреля. Кроме того, т. к. эти компоненты используют коды процессора, то они являются платформно-зависимыми, т. е. ни на каком другом компьютере, кроме PC с Intel-совместимым процессором и ОС Windows, эти компоненты работать не будут. Именно поэтому даже Microsoft всё равно поддерживает Java, и весьма усердно.

Большие вопросы возникают по скорости работы Java-программ. Это действительно слабое место этой технологии, т. к. она базируется на интерпретаторе. Однако что и с чем сравниваем? Когда дело касается работы по схеме клиент-сервер в Сети, то скорость этой самой работы будет определяться в большей степени пропускной способностью канала связи. Ведь время, затрачиваемое на передачу данных, будет намного больше промежутка времени обработки этих данных. Даже если у Вас ну о-очень скоростные каналы, то всё равно производительности Java-машины хватит для нормальной работы.

В случае же, когда Java-программа не использует каналы связи, а только делает что-то на клиентской машине, то конечно скорость выполнения действительно будет намного ниже, чем у аналогичных программ в машинных кодах. Например, те же анимационные заставки. Однако, я пишу свои апплеты на машине с процессором i486DX2-80 и работают они просто отлично. Оцените сами, заглянув на www.VictoryDay.web.com. Я не думаю, что производители микропроцессоров вдруг станут выпускать чипы, работающие медленнее моего. Меня больше воодушевляет то, что всё, что я напишу, будет работать на любых компьютерах без исключения – и всех нынешних и всех будущих. В любом случае достоинства технологии Java с лихвой перекрывают её недостатки, так что обратите внимание!

Желаю успеха.

Victor Makovchik


At title page - НаверхReturn at title page - Возврат на основную страницу