В этой лекции дается обзор архитектуры Mozilla и используемых в ней
концепций. Кода здесь почти нет. Те читатели, которые лишь недавно
начали работу с Mozilla, после прочтения первой лекции получат
основную информацию об этой платформе, а также смогут примерно
представить, на что им предстоит тратить время и усилия. В этой лекции
речь пойдет о том, что собой представляет платформа, как в Mozilla
используются технологии XML и как она реализует принципы быстрой
разработки приложений. Те, кто уже знаком со структурой платформы,
могут перейти к лекции 2,
"Проектирование с XUL".
В разделе "Практика" этой лекции приведено несколько
простых примеров программ. Они помогут заглянуть внутрь существующего
приложения на основе Mozilla, написать свою первую программу и начать
разработку проекта NoteTaker ("блокнот"), которым мы будем
заниматься на протяжении всей книги.
Иллюстрация к этой лекции - структурная схема платформы Mozilla.
Каждый прямоугольник представляет собой сложную подсистему, которая
является частью технологии, и соответствует одному или нескольким
стандартам программного обеспечения (ПО). Объекты, представленные
этими прямоугольниками, встроены в программу, образующую платформу
Mozilla, и не могут рассматриваться по отдельности. Пиктограммы стопок
бумаги изображают файлы в файловой системе компьютера, с которыми при
необходимости взаимодействует платформа.
Даже при первом взгляде на диаграмму видно, что платформа
разделятся на две основные части. Справа (внешний интерфейс) находятся
ориентированные на пользователей технологии: события, стили CSS
(Cascading Style Sheet, каскадные таблицы стилей), DOM (Document
Object Model, объектная модель документа). URL (Uniform Resource
Locators, унифицированные указатели ресурса) - основа WWW -
предоставляют доступ к этим технологиям. Слева же (внутренняя
реализация) находятся системные, объектные технологии, например
компоненты. Точкой доступа к этим технологиям являются идентификаторы
контрактов (одна из концепций Mozilla). Обе части платформы
объединяются языком программирования JavaScript и форматом обмена
данными RDF (Resource Description Framework, схема описания ресурсов).
JavaScript хорошо подходит для связи компонентов внутри платформы
Mozilla.
Наблюдать эти две части платформы воочию очень легко: достаточно
открыть окно любой программы на основе Mozilla, например, браузер или
почтовый клиент Netscape 7.0 - все, что появится в этом окне, будет
создано на основе XML. Простейший пример использования объектов,
связанных с внутренней реализацией платформы - небольшой текст кода на
JavaScript, отправляющий данные из HTML-формы на web-сервер.
Сложность схемы не означает, что метод работы с соответствующей ей
системой программирования должен быть хитроумным или радикально новым.
Программирование с использованием Mozilla как платформы почти ничем
не отличается от программирования в любой другой среде разработки -
нужно просто вводить строки кода в файл. При этом можно пользоваться
широким спектром сервисов, что недоступно, например, при разработке
web-страниц.