Свободные программы и системы в школе

Отставнов Максим

Глава 3. Пакет «Мозилла»

 

 

Среди массы свободных клиентских программ, связанных с сетевой функциональностью, за ограниченностью печатного объема остановимся на проекте «Мозилла».

«Мозилла» представляет собой свободный пользовательский прикладной пакет, реализующий интерфейсы просмотра WWW (браузер), электронной почты и новостей USENET, многопользовательских диалогов в реальном времени («чатов») IRC и редактирования страниц WWW (компоновщик). Входящие в пакет программы, таким образом, открывают доступ ко всем наиболее популярным приложениям Интернет (кроме, на сегодня, «быстрых сообщений»). Существенной сильной стороной «Мозилла» является практически неизменная функциональность и эргономика на широком спектре платформ, включая как стандартные («МакОС Х», «ГНУ/Линукс», «Солярис», «Айрикс», HPUX и пр.), так и альтернативные («МакОС 9», «Майкрософт Уиндоуз», «БиОС», «ОС/2») операционные системы на большинстве аппаратных платформ.

Слегка модифицированная версия «Мозилла» 1.x также распространяется организатором разработки – компанией AOL Time Warner.– под названием Netscape Navigator 6.x и 7.x.

Русская локализация «Мозилла» () выполнена Валентиной Ванеевой, Вадимом Виниченко и Сергеем Дегтярёвым. Текущая стабильная версия – 1.5.

Помимо текущей ветви разработки, команда также работает над следующим поколением приложений «Мозилла». Уже доступны предварительные версии браузера «Жар-Птица» («Mozilla Firebird») и пакета работы с электронной почтой и новостями «Гром-птица» («Mozilla Thunderbird»), они также оперативно русифицируются.

 

3.1 Базовая функциональность «Мозилла»

66

Браузер. Для просмотра страниц WWW и «хождения» по FTP-серверам предназначен компонент «Навигатор». На панели компонент «Мозилла» он изображается морским штурвалом (см. рис. 3-1).

Рис. 3-1

Все возможности программы доступны из меню, наиболее часто употребляемым соответствуют также «горячие клавиши» и кнопки панели навигации. Под меню – еще одна панель, которую можно настроить по своему желанию (чаще всего, на нее выносятся ссылки на десяток самых посещаемых страниц), еще ниже – окно для отображения гипертекстовой информации с посещаемых страниц. Замыкает окно строка состояния с панелью компонент слева и служебными пиктограммами справа.

С каким бы компонентом вы не работали в даный момент, всегда можно запустить любой другой кнопкой с соответствующим значком из панели компонент или пункт меню «Окно». Из пункта меню «Создать...» вы можете, кроме того, открыть еще одно окно просмотра или вкладку (вкладка – это окно в окне) уже открытого окна, на разных вкладках вы можете просматривать разные страницы с одного сайта или разные сайты. Это позволяет не захламлять экран и панель задач окнами одного типа и сразу видеть, где закачка страницы уже завершилась, а где еще нет.

Из пункта меню «Файл» можно также открыть любой локальный html-файл или каталог (или файл другого известного Навигатору формата, например, графический или текстовый), одной командой переслать по почте адрес понравившейся страницы или даже всю страницу, сохранить страницу на жестком диске или напечатать на принтере.

Программа ведет учет страниц, которые вы посетили («Перейти... Журнал посещений»). Это удобно для быстрого возврата на уже посещенную страницу. Сколько просмотренных адресов (и на какое время) программа будет их сохранять, можно указать в общем окне настроек.

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

Навигатор может передать запрос на поиск информации на указанные поисковые машины, дает возможности управления заполнением форм и блокирования изображений (это удобно для отсечения рекламы из многочисленных баннерных сетей) и cookies конкретных сайтов, запрета появления выскакивающих окон.

Наверное, самая интересная особенность программы – «боковая панель» (Sidebar). Размещенная в левой части всех окон, она значительно облегчает работу. На нее можно вывести множество полезной информации. Например, вы можете настроить ее так, чтоб сразу при запуске программы, видеть свежие новости, новости с любимых новостных сайтов, все свои закладки в виде дерева, иметь доступ к своим любимым поисковикам или еще что-нибудь, что сами придумаете.

Почта. Электронная почта соревнуется с WWW за почетное звание главного коммуникационного приложения. Существует масса свободных программ для работы с почтой, и среди них – модуль Мозиллы «Почта и новости».

Открыть его можно, нажав кнопочку с изображением конверта, выбрав соответствующий пункт меню «Окна».

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

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

В почтовом ящике возможен поиск по теме, отправителю, словам в самом письме, дате, приоритету, адресатам, датам или комбинации этих параметров – этого хватит, чтоб не потеряться в своем почтовом ящике. Можно иметь несколько почтовых ящиков на разных серверах и работать с ними в одном окне.

Главное окно программы поделено на четыре части. Слева вверху – список почтовых ящиков, под ним боковая панель. Справа вверху – список писем в выбранной папке, под ним – текст выбранного сообщения. Многие из них можно временно спрятать, чтоб освободить место для других окошек. И здесь доступна боковая панель со всеми ее возможностями.

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

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

В этой ситуации вам на помощь придет «Компоновщик», спрятавшийся за кнопкой с листком и пером для письма. Вызвав его, вы сможете быстро и без погружения в изучение стандарта создать простую страницу в режиме визуального редактирования. Как в word-процессоре, просто пишете текст, вставляете таблицы и рисунки и сразу можете видеть, что у вас получается. Более того, заглянув на другие вкладки окна Компоновщика, можно еще и подучить HTML. В этом помогут вкладки «Все теги» и « Код». Проверить, как ваша работа будет смотреться в окне просмотра «Навигатор», можно на последней вкладке. Главное преимущество этого инструмента перед многими похожими состоит в создании правильного HTML кода без лишних и нестандартных тегов, поэтому рекомендую его как первый инструмент начинающего (разумеется, для создания серьезных проектов изучение стандартов W3C обязательно).

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

Адресная книга. По мере того, как увеличивается круг ваших знакомых, помнить все необходимые адреса становится все тяжелее, но на помощь приходит адресная книга программы. Каждый раз, когда вы пишете письмо новому адресату или получаете письмо от нового отправителя, этот компонент программы запоминает его адрес. Дальше, когда вы начинаете заполнять поле «кому» нового письма, он пытается завершить набор за вас. Если адрес угадан правильно, можно просто переходить к заполнению остальных полей. Когда программа ошиблась, можно выбрать подходящий адрес из выпадающего списка или завершить набор самостоятельно.

Внешний вид окна «Адресной книги» достаточно типичен: снова, сперва меню, затем панель инструментов и основное окно с панелью состояния. Основное окно поделено на четыре части, некоторые из которых можно прятать. Слева – названия коллекций адресов вверху и боковая панель под ними. Справа – список карточек выбранной коллекции вместе с панелью поиска по ним вверху и окно для отображения информации с выбранной карточки внизу. Записи для каждой карточки редактируются по необходимости.

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

В общей категории «Внешний вид» настраивается использование шрифтов для каждой кодовой страницы, отображаемые при запуске Мозиллы окна, использование цветов, язык интерфейса.

Вторая общая категория – «Дополнительно» – позволяет отрегулировать использование cookies, Java, размер и время сохранения буфера на диске для быстрого возврата к уже просмотренным страницам, использование прокси-серверов и еще некоторые полезные параметры.

Название группы «Приватность и безопасность» говорит само за себя. Количество доступных в ней настроек, говорит о том, насколько ответственно разработчики отнеслись к этому вопросу. Предлагаю вам разобраться с ней самостоятельно.

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

 

3.2 «Мозилла»: как это сделано

Возможно, более интересным будет общий взгляд на «начинку» «Мозилла», поскольку эта тема остается пока практически нераскрытой в публикациях на русском. А именно интересными внутренними архитектурными решениями и возможностями, которые они открывают для программистов, обусловлена перспективность и востребованность этого проекта.

«Движок» «Геккон». Собственно интерпретацию («рендеринг») гипертекста и гипермедиа в браузере и компоновщике осуществляет «движок» под названием Gecko («геккон», «ящерка»). Сам по себе «движок» компактен и быстр. Он используется также рядом альтернативных браузеров, таких, как «Галеон», «Афродита», «Камино», «Феникс»; первый из них, достачно развитый и «шустрый», может рекомендоваться пользователям старых или маломощных (например, карманных) машин.

Язык XUL. Видимо, самой интересной особенностью «Мозилла» является реализация интерфейса пользователя на языке XUL, представляющем собой XML-приложение, т.е. набор определений вида и поведения визуальных объектов, свойственных современным графическим интерфейсам пользователя, на расширяемом языке разметки XML (об XML и его интегрирующей роли в современных приложениях компьютера подробнее говорится в разделе 4.1).

В большей своей части программы «Мозилла» «написаны для XUL» и интерпретируются «на лету». Обратной и неприятной для пользователя стороной этого остается значительная ресурсоемкость «Мозилла» и размер пакета. Базовая установка занимает порядка 30 Мб и комфортная работа в большинстве сред начинается от 128 Мб ОЗУ и 500 МГц процессора.

«Светлой» стороной XUL'ности «Мозилла» является его чрезвычайная гибкость, что, видимо, позволит уже в ближайшие годы «малой кровью» существенно расширить набор входящих в пакет программ и практически полностью покрыть ими клиентские приложения Интернет.

На Рис. 3-2 видно, что по специальному протоколу chrome можно просто «открыть» в браузере еще один браузер (или любой другой компонент пакета), причем это не просто изображение его интерфейса, а полноценная работающая программа.

Рис. 3-2

Разумеется, суть использования XUL не в этом, а в том, что на этом относительно простом языке разметки могут быть легко реализованы различные интерактивные прикладные программы. На сайтах www.mozdev.org и www.xulplanet.com можно найти десятки программ на XUL, а по http://books.mozdev.org/chapters/ можно найти текст книги «Создание прикладных программ в “Мозилла”» (к сожалению, пока только на английском).

Например, так выглядит традиционная первая программа «Привет, мир!» на XUL (ее текст заимствован из упомянутой книги) – см. Рис. 3.3.

Рис. 3-3

Знакомым с JavaScript-сценариями в HTML или XML этот пример должен быть кристально понятным. Однако внимание следует обратить на то, что элементы разметки, определяемые XUL, свойственны графическим интерфейсам общего назначения («окно» (window), «контейнер» (box), «кнопка» (button) и т.п.), и весь XUL-файл определяет интерфейс, а не страницу.

Перспективы, открываемые универсальным языком описания графического интерфейса перед отраслью быстрой прикладной разработки (RAD) и практическим программированием вообще – очевидны. Но здесь уместнее будет указать на методические перспективы: включение в один и тот же вводный курс программирования на XUL наряду с изучением языков разметки контента (например, HTML, особенно в его нынешней, XML-версии) позволит осуществить значительную понятийную экономию. Возможно, наш кругозор ограничен, но нам не известны другие полноценные языки программирования интерфейса, кроме XUL, являющиеся корректными и исполнимыми XML-приложениями.