Современные программы нередко настолько объемны и велики, что запустить их можно уже не на любом компьютере. Пробовали ли вы запустить одновременно несколько программ из пакета Microsoft Office? Удовлетворительно они работают только на очень хорошей машине.
А попробуйте вставить в WinWord видеоизображение! Со множеством проблем помогает справиться одно из основных свойств OpenDoc – способность разбивать все приложения на независимые модули.
Преимущества для пользователей
Что это дает пользователю?
Поясню на примере. Пусть вам надо вставить таблицу Microsoft Excel в документ Microsoft Word.
В случае применения OLE для выполнения этой операции в память будут загружены обе программы. Применив OpenDoc, в памяти будут только необходимые фрагменты Excel и WinWord (вывод и редактирование таблицы и текста).
Это весьма упрощенный пример, но он точно описывает один из принципов OpenDoc.
Один, но не единственный. Помимо экономии памяти, огромную роль играет и "человечность" новой технологии.
Точнее – программ, написанных с ее использованием. Как известно, Apple является экспертом в области дружественного интерфейса.
По этому поводу один из разработчиков сказал: "Первым требованием к интерфейсу OpenDoc была простота использования, вторым - простота изучения".
OpenDoc определяется интуитивно понятными связями. Вы можете за одну минуту создать документ, состоящий из рисунка, текста, электронной таблицы и, самое главное (что невозможно в OLE), редактировать все это, не вызывая дополнительных программ, используя только меню документа.
Вам не придется запоминать, сколько раз и в каком месте надо кликнуть мышкой, – OpenDoc понимает все с первого раза. И это гораздо проще для пользователя, намного ближе к тому, что он ожидает от программ.
Однако, пожалуй, главным достоинством OpenDoc является то, что она не имеет "особенностей", появляющихся по принципу "если в программе есть недостаток, подробно его опишите и охарактеризуйте как принципиальную особенность".
Работа с OpenDoc приложениями настолько естественна, что напоминает построение домика из детского конструктора, в котором все детали подходят друг к другу.
Преимущества для программистов
Конечно же, несмотря на все удобства использования программ, написанных с помощью OpenDoc, вряд ли этот принцип стал бы настолько популярным, если бы не предоставлял и определенных преимуществ программистам.
Во-первых, при применении новой системы значительно уменьшается время разработки проекта, что немаловажно. Один из разработчиков пакета утверждает, что программист, использующий OLE, потратит два с половиной месяца на задачу, которую с помощью OpenDoc можно решить за два с половиной дня.
Во-вторых, OpenDoc позволяет разбивать задачу на независимые компоненты, что является такой же революцией в области программирования, как и введение (в свое время) технологии модульного программирования.
OpenDoc допускает более естественную специализацию и параллельное программирование. Система очень удобна при написании сложной программы, без применения специальных CASE-приложений, поскольку намного упрощает разделение труда между разработчиками: позволяет распределить задачу между исполнителями различной квалификации и специализации, что, в конечном итоге, повышает качество продукта.
В-третьих, значительно уменьшается стоимость цикла разработки программы, а значит, и итоговая цена.
Команда разработчиков OpenDoc прекрасно понимает необходимость связи с программами и операционными системами Microsoft.
По словам руководителя группы по разработке архитектуры OpenDoc Курта Пирсола (Kurt Piersol), требование совместимости с OLE является обязательным для сертификации программы как полностью совместимого с Windows приложения.
Поэтому, утверждает он, OpenDoc-приложение – это совершенное OLE-приложение. Более того, используя OpenDoc, разработчики фактически не нуждаются в OLE API и могут не заботиться о перекомпилировании своих программ при появлении очередной версии OLE: Cl Labs просто изменит свою библиотеку!
Немалую роль сегодня играет межплатформная интеграция.
В условиях, когда даже в небольшом офисе применяются различные платформы (DEC, IBM, Macintosh, Sun и так далее), требуется создавать независимые программы, переносимые на другой тип компьютера просто перекомпиляцией исходных текстов.
Наличие библиотек OpenDoc для различных платформ позволяет создавать действительно конкурентоспособные продукты, причем, употребляя свойства OpenDoc, вы можете не переписывать всю программу заново, а использовать части уже составленных исходных текстов.
OpenDoc не вводит ограничений на язык программирования. Вы можете писать различные компоненты программы на любом языке, начиная с COBOL и заканчивая C++, а потом использовать их совместно, не заботясь о том, как их объединить.
Причем при написании и компиляции программ допускается использование мощных инструментальных средств разработки приложений не только от спонсоров Cl Labs, но и других производителей.
Как уже отмечалось выше, изменение OpenDoc – это открытый процесс. Все решения по модификации системы принимаются ассоциацией Cl Labs после обсуждения со всеми ее членами, независимо от того, на какой иерархической ступеньке они находятся.