ЭЛЕКТРОННАЯ БИБЛИОТЕКА КОАПП |
Сборники Художественной, Технической, Справочной, Английской, Нормативной, Исторической, и др. литературы. |
Средства просмотра WWW-страницПавел Храмцов
Скорее всего, программы, при помощи которых пользователь получает непосредственный доступ к ресурсам Internet, следует обозначать термином "интерфейс пользователя Internet" или просто "интерфейс". В общем случае так называются программы, которые обеспечивают доступ ко всем или большинству информационных ресурсов Сети: электронная почта, телеконференции Usenet,FTP-архивы, WAIS, Gopher, Internet Relay Chat, World Wide Web, базы данных, доступные по telnet, и ряд других информационных источников. Остановимся, прежде всего, на тех интерфейсах, которые основаны на языке гипертекстовой разметки HTML. Это могут быть как реально существующие, так и виртуальные файлы, генерируемые программно и передаваемые интерфейсу по сети. Таких программ великое множество. Если просмотреть файл регистрации визитов на любом HTTP-сервере, то можно обнаружить около сотни такого сорта программ. Практически в любом компьютерном журнале можно найти информацию о рейтингах этих программ, составленных на основе анализа функциональных возможностей, дизайна и доброго десятка других черт, которые авторам рейтингов показались достаточно важными. Мы же рассмотрим интерфейсы с точки зрения типовой реализации особенностей технологии World Wide Web и тенденций ее развития. Будут представлены программы www, lynx, Arena, Internet Explorer, Netscape Navigator, SlipKnot и, как пример отечественной разработки, Ariadna. Интерфейс Mosaic не попал в этот список потому, что с точки зрения современных тенденций не является чем-то уникальным: исторически он был только предтечей Netscape Navigator, аккумулировавшего все лучшее, что было заложено в Mosaic. Программа wwwЭто самый первый из заявленных на Internet интерфейсов доступа к World Wide Web. С самого начала программа www предназначалась для организации анонимного доступа к ресурсам World Wide Web через telnet. В этом смысле www до сих пор остается наиболее универсальным интерфейсом, не зависящим от типа используемого терминала. Однако есть и огромный минус - отсутствие поддержки ряда очень нужных возможностей HTML. Сегодня в HTML можно выделить несколько основных изобразительных и управляющих средств языка. К первым относятся: разбивка текста на параграфы; организация списков; выделение заголовков; отображение встроенной графики; отображение таблиц и математических формул; возможность построения многооконных интерфейсов; управление шрифтом текста, его цветом и стилем; управление фоном; организация просмотра файлов специальных форматов. К управлению относятся: организация сложных экранных интерактивных форм, организация текстовых и графических гипертекстовых ссылок, управление процессом отображения информации в многооконных интерфейсах, программирование гипертекстовых страниц, мультипликация. Из этого списка программа www поддерживает только разбиение на параграфы, текстовые ссылки и, если сервер допускает эту возможность, поиск по ключевым словам в индексе информационных ресурсов сервера. Такие широкие ограничения вызваны тем, что www - это алфавитно-цифровой интерфейс, ориентированный на работу с простейшими терминалами, способными только на ввод информации в командной строке и последовательный просмотр полученных страниц Web. Однако эта программа обеспечивает доступ к Web с любого рабочего места. Если у пользователя имеются компьютер, модем и регистрация на компьютере, включенном в Сеть, то в режиме удаленного терминала программа www может обеспечить приемлемый доступ к Web. У www имеется еще одно предназначение - эта программа служит для иллюстрации использования библиотеки общих кодов W3, используемых для разработки программ в технологии WWW. Программа www размещается по адресуW3C (http://www.w3.org/).Программа lynxЭта программа предоставляет собой уже гораздо более развитый интерфейс, поскольку поддерживает все возможности HTML 2.0, кроме графики. Если говорить более точно, то lynx позволяет поддерживать управление отображением текста в том виде, в каком это вообще доступно на алфавитно-цифровых устройствах: выделение цветом, мерцание, инверсия и т.п. В местах вставки графики lynx либо показывает текст, заданный атрибутом ALT, либо сообщает, что на этом месте расположен IMAGE. Главным достоинством lynx, на мой взгляд, является возможность работы с формами. Это позволяет разрабатывать интерактивные интерфейсы и осуществлять поиск и изменение данных. Lynx - это свободно-распространяемая программа, доступная в исходных кодах и работающая в большинстве операционных систем. Единственным узким местом является ориентация lynx на библиотеку curses, которая обеспечивает полноэкранный алфавитно-цифровой интерфейс. Но если этот подводный камень удается преодолеть, то в распоряжение пользователя поступает полноценный алфавитно-цифровой интерфейс.Еще два интерфейсаНепосредственно к www и lynx примыкают интерфейсы SlipKnot и I-COM. Не будем останавливаться на разнице между ними, а постараемся объяснить для чего они нужны. SlipKnot и I-Com предназначены для доступа к Web по коммутируемой линии. Изюминка этих программ в том, что пользователю не надо получать IP-адрес для своего удаленного компьютера: ему требуется только вход на машину в режиме удаленного терминала. В телеконференции comp.infosystems.www.windows.browsers недавно велась достаточно бурная дискуссия о том, нужны ли SlipKnot и I-Com и если да, то для чего? Ответна этот вопрос дает внимательное рассмотрение маршрутизации в сетях IP. Функции маршрутизатора в сетях IP выполняют шлюзы - это либо компьютер TCP/IP, стек которого сконфигурирован для работы в качестве шлюза, либо устройство-маршрутизатор. Удаленные машины, подключаемые по телефонной линии к локальной сети, как правило имеют соединение по протоколу SLIP или PPP. Но это значит, что им надо раздавать адреса, отличные от машин локальной сети.Некоторые системы разрешают использовать адреса локальной сети и для удаленных машин, но в этом случае такая настройка может быть выполнена только на машине-шлюзе. А что делать тем пользователям, которые не являются администраторами сетей и не имеют привилегированного доступа на машинах-шлюзах, но имеют возможность настроить свой компьютер для работы с модемом и обеспечивать доступ в режиме удаленного терминала по телефонному каналу? Именно для этого случая и разработаны SlipKnot и I-Com. Каждая из этих программ дозванивается до компьютера, подключенного в Internet, вводит идентификатор пользователя и его пароль и, после успешного входа в систему, запускает либо www, либо lynx, которые и передают информацию на машину пользователя. При этом никаких протоколов семейства TCP/IP на конечном этапе (www-SlipKnot) не применяется- вся коррекция ошибок возложена на протоколы модема. Обе программы реализованы для среды Windows и позволяют реализовать форматирование текста в соответствии со стандартом HTML 2.0. Программы позволяют работать и с графикой, но эти возможности сильно ограничены. Системы Arena, Netscape и Internet ExplorerПрежде чем перейти к изложению концепции, используемой в данных программах, необходимо остановиться на основных направлениях развития технологии WWW в области развития языковых возможностей. На сегодняшний день существует два законченных стандарта языка HTML - версии 1.0 и 2.0. Для дальнейшего развития этого языка было предложено несколько путей: первый из них - HTML+- является базой для следующей версии HTML 3.0. Именно в этом варианте языка были определены таблицы, стили и математические формулы. Концептуальный интерфейс для HTML 3.0 - это программа Arena, главное назначение которой- продемонстрировать возможности HTML 3.0.Другим направлением развития HTML стали так называемые расширения Netscape Extensions. Первоначально эта спецификация развивала синтаксис HTML 2.0в сторону более выразительных средств представления документов: возможность смены фона, выравнивание текста, обтекание графики текстом и т.п. Расширения Netscape Extensions были предложены компанией Netscape Communication и реализованы в программе Netscape Navigator версии 1.1 и старше. Фактически, если HTML+ был направлен на расширение HTML в сторону реализации публикаций научно-технического характера, то Netscape Extensions развивали HTML в сторону рекламно-издательской деятельности. Этого направления компания Netscape Communication придерживалась и в следующей версии Navigator, куда были добавлены две принципиально новые возможности разработки Web-страниц:фреймы и JavaScript. Заявлена также и поддержка Java, но об этом языке как о концептуальном развитии технологии лучше говорить в контексте другой программы - HotJava компании Sun Microsystems. На поприще развития стандартов Web не отстает от других, и компания Microsoft, предлагающая свободно распространяемые сервер и интерфейс Internet Explorer. Важным представляется тот факт, что Microsoft не просто пытается поддерживать чужие разработки, но и сама предлагает новые расширения языка, которые касаются главным образом возможностей разработки мультимедийных страниц и являются в некотором смысле альтернативой предложениям Java и JavaScript. Таким образом, можно выделить следующие направления развития технологии Web: HTML 3.0 (HTML+), HTML 2.0 Netscape Extensions, JavaScript, Java, Microsoft Extensions. Чуть в стороне находится еще одна ветвь исследований- создание трехмерных страниц, ярким представителем которой является язык моделирования виртуальной реальности VRML, предложенный компанией Silicon Graphics. Программа Arena реализована для ОС Unix и требует для своей сборки библиотеки Motif, а интерфейс базируется на библиотеке общих кодов W3C и поддерживает фон, таблицы, обтекание графики текстом, встроенные imagemap и математические выражения. Последние, кстати, не поддерживаются ни одним другим интерфейсом. Кроме этого, Arena умеет работать со стилями документов и в скором времени, вероятно, сделает возможным программирование управляющих меню самой программы через заголовок HTML-документа. Следует отметить, что это довольно медленная программа, которая потребляет к тому же большое количество ресурсов. Но ее разработчики и не претендовали на создание промышленного продукта -их цель состояла в демонстрации новых возможностей языка разметки. Описание интерфейса и программа его реализации хранятся по адресу W3C (http://www.w3.org/). Netscape Navigator - это интерфейс номер один в Internet. Главным его достоинством является наиболее гибкое представление Web-страниц за счет использования Netscape Extensions. Именно в этой программе впервые появились возможности центрирования элементов страницы относительно границ рабочей области окна программы, создания вложенных таблиц, управления размером и цветом шрифта, мерцания текста, обтекания графики текстом и многое другое. Среди основных достижений необходимо упомянуть фреймы и дополнительные окна, динамическое обновление документов и работа с JavaScript. Фреймы - долгожданная многооконность, которая позволяет решить сразу множество проблем, связанных с разработкой документов. В первую очередь, обеспечивается возможность одновременной работы с текстом, меню и графикой. Фрейм позволяет использовать часто встречающиеся фрагменты текста, например постоянную заставку в качестве отдельного фрейма. Многие пользователи Internet наверняка встречались с этим механизмом при обращении к поисковой службе InfoSeek (http://www.infoseek.com/).Если раньше нужно было постоянно вставлять в текст готовые части страницы, которые появляются в начале и конце каждого документа или использовать включаемые серверы, то теперь это можно делать при помощи фреймов. При этом фреймы остаются очень органичным решением - документ с фреймами является просто суперпозицией простых HTML-документов. Дополнительные окна - это тесно связанный с фреймами механизм. Но если страница с фреймами делит рабочую область Navigator на несколько частей, не выходя за пределы окна программы, то в случае дополнительного окна разработчик страницы Web имеет возможность открыть новое окно Navigator и тем самым придать просмотру как бы новое измерение. Такое направление интерфейса лежит в русле разработки многооконных интерфейсов гипертекстовых систем, о которых в академических кругах говорят уже лет десять, но к единой модели оных так до сих пор и не пришли. Очевидно одно - это позволяет оставлять видимые закладки при проходе по гипертекстовой сети по инициативе разработчика страниц, что является в некоторых случаях достаточно полезным решением, расширяющим привычную двухуровневую схему просмотра, когда в отдельное окно помещали либо графику, либо файл специального формата. Динамическое обновление документов - это возможность построения самопросматривающихся страниц и, если позволяет скорость линии связи, средство реализации примитивной мультипликации. Если разработчики программы Arena только обещают включить использование заголовка HTML-документа для управления просмотром последнего, то в Netscape это уже делается. В данном случае используется тэг META с атрибутом HTTP-EQUIV, в котором указывается порядок обращения Navigator к серверу за обновленным документом. Кроме языковых возможностей в Navigator имеется еще ряд особенностей, которые заставляют говорить об этой программе все компьютерные издания мира, а пользователей - копировать ее на свои компьютеры. Navigator имеет встроенные возможности работы со списками новостей и свою собственную программу приема и отправления электронной почты. Таким образом, пользователь в одной упаковке получает весь необходимый набор средств для работы в Internet, и ему, по большому счету, больше ничего не нужно. Для разработчиков Web-страницв версию Navigator Gold 2.0 включен еще и редактор гипертекстовых страниц. Все это организовано в виде дополнительных окон специального типа, что очень органично вписывается в архитектуру технологии WWW. В сети существует много мест, откуда можно списать программу Netscape Navigator. Лучше всего это сделать с норвежских или шведских зеркал, в частности с ftp.luth.se или ftp.sunet.se. Можно также поискать navigator и через archie.funet.fi или archie.luth.se. HotJava - продукт компании Sun, который специально предназначен для демонстрации возможностей апплетов Java, встроенных при помощи тэга APPLET в тело HTML-документа. Следует сразу отметить, что такого бурного использования Java в страницах Web, как это происходит сегодня с JavaScript, не наблюдается. На мой взгляд, это объясняется двумя причинами. Во-первых, Java - это язык программирования, который требует профессиональных навыков работы и понимания объектно-ориентированного подхода при создании приложений. Большинство разработчиков Web-страниц такими навыками не обладают. Во-вторых, HotJava не так популярен, как Netscape, и до недавнего времени был реализован только для ограниченного набора систем. Конечно, Java обладает гораздо более мощными средствами построения мультимедийных страниц, но какой в этом прок, если большинство пользователей все равно это не ощутят. Для того, чтобы можно было разрабатывать страницы с апплетами Java, необходимо скопировать Java Development Kit, который представляет из себя компилятор кода Java. В отличие от JavaScript для получения апплетов программа-интерфейс должна делать дополнительные запросы к серверу, точно так же, как и в случае встроенной графики. Чем больше апплетов на странице, тем больше обращений к серверу. Однако фирма-производитель уверена в успехе своего нового детища, Java. Сегодня существуют реализации HotJava и JDK для ОС Solaris, Win32 и MacOS. Получить их можно либо с домашних страниц Sunsoft, либо из архивов, которые были указаны для JavaScript. Internet Explorer - это ответ Microsoft на все расширяющиеся запросы WWW. Вообще говоря, в этой программе нет ничего необычного по сравнению с другими программами-интерфейсами World Wide Web. Explorer - типичный пример маркетинговой политики проникновения в существующую отрасль разработки ПО. Эта программа прекрасно приспособлена к особенностям Win32 и реализует ряд новых языковых возможностей, которые могут стать стандартом в новой версии HTML. Главным образом это касается фонового звука (атрибут SOUNDу тэга BODY) и форм. Совершенно очевидно, что компания Microsoft, во-первых ориентируется на огромную армию пользователей своих ОС и свои же программные продукты, реализованные как средства расширения возможностей демонстрации HTML-страниц. Такой подход до сих пор неоднократно приводил к успеху, а критическая масса пользователей MS-DOS и Windows играла решающую роль в конкурентной борьбе. Но ситуация с Netscape несколько иная. Во-первых, Navigator - изначально многоплатформенная система, что позволяет создать единую среду разработки и просмотра страниц World Wide Web. Во-вторых, Navigator - это рабочее место в Internet, до чего Microsoft еще явно далеко. Для этого компания должна разработать новую операционную систему и реализовать в ней интерфейс Web со всеми возможностями Navigator плюс еще что-нибудь, чтобы уйти в технологический отрыв. Кроме того, в этой борьбе Netscape опирается на поддержку Silicon Graphics, Sun и ряда других известных компаний, что делает борьбу еще более захватывающей. Explorer и свободно распространяемый сервер для Win32 можно получить с домашних страниц Microsoft (ftp://ftp.microsoft.com/или http://www.microsoft.com/). Ariadna - пример отечественной программыВ отличие от "китов" компьютерного бизнеса типа Microsoft или Netscape, отечественная компания AMSD пока не изобретает принципиально новых подходов - идет реализация существующих стандартов языка и его расширений. Как показывает практика, таким программам уготована судьба вечных аутсайдеров, если только нет крупной информационной сети, которая предоставляет эту программу в виде стандартного средства доступа к Web. Но будем надеяться, что AMSD найдет интересные, новые решения и сможет создать нечто неповторимое. Тестовая версия программы Ariadna может быть получена по адресу http://www.amsd.ru/.ЭпилогЗавершая обзор новых технологий World Wide Web, напомним еще раз основные тенденции: повышение качества отображения страниц Web, программирование страниц Web, добавление новых измерений к страницам, возможность построения многооконных интерфейсов, "оживление" интерфейса, повышение интерактивности на линии "интерфейс-сервер". Использование Web в бизнес-целях заставляет задуматься и о шифрование трафика, что уже реализовано во многих коммерческих версиях интерфейсов. Мы являемся свидетелями рождения новой отрасли, которая в данный момент определяет свои стандарты. Наиболее смелые из отечественных программистских команд на равных могут принять и принимают участие в этом соревновании.Павел Храмцов - руководитель группы РНЦ "КурчатовскийИнститут". С ним можно связаться по тел. (095) 196-9124 или по электронной почте: paul@kiae.su. JavaScript - средство создания "оживших" страниц WebJavaScript, собственно говоря, - это объектно-ориентированный язык программирования, привязанный к Navigator, отдельные компоненты которого являются объектами этого языка. Часто пишут, что Java и JavaScript - близнецы-братья. Может быть, они и братья, но отнюдь не близнецы. Во-первых, для JavaScript не требуется специального компилятора, и сценарий размещается прямо в теле документа - его интерпретирует непосредственно Navigator. Конечно, возможности программирования анимации в JavaScript очень ограничены: можно организовать бегущую строку, идущие часы, меняющиеся картинки, но не более. Главным достоинством JavaScript является организация всего этого без использования сервера. Navigator с JavaScript позволяет организовать многооконную локальную гипертекстовую систему с контекстной справочной системой, что раньше требовало достаточно больших усилий программистов.Все эти богатые возможности не даются просто так - за все приходится платить. Проводя опыты со сценариями на Windows 3.x, я очень скоро убедился, что "ожившие" страницы требуют очень много ресурсов, а иногда могут даже привести к "зависанию" системы. Разъяснения, полученные из comp.lang.javascript, javascript@oberon.edu,а также аналогичного списка Netscape, выглядели примерно так: "Не валяй дурака и ходи как все по камешкам - ставь многопотоковые Windows95, а лучше NT, и не морочь занятым людям голову". А если серьезно, то Navigator для Windows 3.1х является лишь калькой 32-разрядных версий этой программы, и так как в 16-разрядной ОС нет реальной вытесняющей многозадачности, то при использовании отложенных вызовов функций в цикле по setTimeout происходит просто "отъедание" ресурсов, которые далеко не безграничны. Hewlett-Packard объединяется с Microsoft и Netscape для печати документов HTMLMicrosoft - не единственный монополист, стремящийся запустить свои щупальца в Internet. Ведущий производитель принтеров, компания Hewlett-Packard, тоже намерена расширить свое присутствие в World Wide Web.HP заключила два практически одинаковых соглашения с Microsoft и Netscape Communications с тем, чтобы встроить в принтеры поддержку языка гипертекстовой разметки документов HTML (HyperText Markup Language), который является стандартным средством представления данных в Internet. Сегодня из-за недостатка стандартов, относительно низкого разрешения графических файлов в Internet и отсутствия правил форматирования документов, единых для Internet и принтеров, которое влечет за собой потерю данных, осложняется распечатка информации непосредственно из Internet. Хотя HP собирается работать с Microsoft и Netscape по отдельности, компания официально заявила, что считает себя своего рода связующим звеном, призванным обеспечить согласование различных стандартов. "Пока не решено, как и когда будет реализована поддержка HTML в принтерах и насколько изменится их архитектура", - говорит менеджер по маркетингу отделения лазерных принтеров Джим Лионс. "Мы могли бы расширить PCL (графический язык, поддерживаемый принтерами HP) для поддержки HTML, но другие варианты тоже возможны", - считает Лионс. Несмотря на расплывчатость обещаний и отсутствие каких-либо сроков, аналитики высоко оценивают новое начинание HP и пророчат ему успех. "К сожалению, Microsoft и Netscape используют различные методы поддержки печати HTML. Авторитет HP позволяет ей просто-напросто диктовать свои стандарты другим производителям", - говорит Билл Флинн, менеджер консультационной службы Lyra Research. "Соглашения с Microsoft и Netscape позволяют с уверенностью утверждать, что на чем бы HP не остановила выбор, это станет частью базового множества HTML", - считает Флинн. HP собирается улучшить качество печати документов Internet
- Том Квинлан
|