Вы здесь

5. Архитектура InDesign

| |

Архитектура InDesign

Стратегия программирования претерпела в последнее время колоссальные изменения. Объектно-ориентированный подход стал основой гибкой и расширяемой архитектуры. InDesign - первая издательская система, использующая все преимущества новых технологий программирования и организации взаимодействия программных модулей.

InDesign построен на основе легко заменяемых, обновляемых и дополняемых программных модулей, реализующих его отдельные функции. Идея модульности не нова в среде разработчиков программного обеспечения, включая Adobe. Например, Adobe Photoshop имеет собственный интерфейс подключаемых модулей начиная с версии 2.5. Для того чтобы дополнить программу какими-либо новыми функциями, не нужно изменять ее код - достаточно подключить к ней новый модуль. Модули расширения могут создавать не только разработчики программы, но и любые третьи фирмы. Успех технологии подключаемых модулей убедительно демонстрируется программой Photoshop, для которой существует более полутора сотен модулей, выполняющих разнообразные специализированные задачи.

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

a

б

Рис. В.1. Традиционная архитектура приложения (а), архитектура InDesign (б)

Архитектура InDesign изображена на рис. В.1, б. Она лишена перечисленных недостатков традиционной. Все компоненты программы, включая ядро, являются подключаемыми модулями! Модули могут в соответствии с регламентированным интерфейсом взаимодействовать между собой и использовать отдельные функции друг друга. Это дает множество преимуществ разработчикам, а в конечном счете и пользователям программы. Для того чтобы исправить какие-либо ошибки, разработчикам достаточно заменить модуль, в котором они обнаружены. Столь же проста процедура обновления программы. Если разработчики реализовали какую-либо новую функцию, им не нужно переписывать многие фрагменты приложения, достаточно оформить функцию в виде подключаемого модуля. Модульная архитектура облегчает и жизнь пользователя. Чтобы установить обновление, не требуется переустанавливать все приложение. Нужно просто поместить в папку InDesign новый модуль - сразу после этого он готов к использованию.

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

Не забывайте, что и ядро приложения стало мобильным, поскольку само является модулем! Теперь обновление версии программы сводится к изменению гораздо меньшего объема кода. Так, ядро InDesign занимает всего несколько мегабайт.

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

Таким образом, InDesign по архитектуре действительно больше напоминает операционную систему, чем традиционную издательскую программу. Подключаемые модули выполняют для нее роль приложений. Adobe сделали ставку на модульную организацию, открытость, мобильность и расширяемость своего детища. И это действительно является сильным доводом в их пользу в борьбе с традиционным конкурентом Quark Inc.

| |


eXTReMe Tracker