Разработчик(и) | Apple Inc. |
---|---|
Стабильный релиз | 1.2.1 / Март 1997 ( март 1997 г. ) |
Операционная система | Классическая Mac OS , OS/2 , Windows , AIX |
Тип | Структура составного документа |
OpenDoc — это несуществующий стандарт многоплатформенного программного обеспечения , созданный Apple в 1990-х годах для составных документов , задуманный как альтернатива фирменному Object Linking and Embedding (OLE) Microsoft . [1] Это один из самых ранних экспериментов Apple с открытыми стандартами и методами совместной разработки с другими компаниями. Разработка OpenDoc была передана некоммерческой Component Integration Laboratories, Inc. (CI Labs), принадлежащей растущей команде крупных корпоративных спонсоров и фактически положившей начало отраслевому консорциуму. В 1992 году Apple, IBM и Motorola создали альянс AIM с OpenDoc в качестве основы. С возвращением Стива Джобса в Apple, OpenDoc был прекращен в марте 1997 года.
Основная идея OpenDoc заключается в создании небольших, повторно используемых компонентов, которые отвечают за определенную задачу, например, редактирование текста, редактирование растровых изображений или просмотр FTP- сервера. OpenDoc — это фреймворк, в котором эти компоненты могут работать вместе, и составной формат документа для хранения данных, созданных каждым компонентом. Затем эти документы можно открывать на разных сетевых машинах с разными операционными системами, на которых фреймворки OpenDoc могут заменять подходящие компоненты для каждой части, даже если они от разных поставщиков. [2] Таким образом, пользователи могут «создавать» свои документы из частей. Поскольку нет основного приложения, а единственным видимым интерфейсом является сам документ, система известна как документо-центрированная . [3]
OpenDoc был задуман, например, для того, чтобы позволить небольшим сторонним разработчикам выйти на конкурентный рынок офисного программного обеспечения и создавать небольшие специализированные приложения вместо того, чтобы предоставлять полный набор. Предполагалось, что он будет способствовать новому будущему интернет- магазинов приложений . [4]
Microsoft обратилась к Apple с просьбой внести вклад в предлагаемый проект OLE II. Apple некоторое время экспериментировала с программными компонентами, основываясь на первоначальной работе, проделанной над моделью связывания Publish and Subscribe и языком сценариев AppleScript , который, в свою очередь, был основан на среде программирования HyperCard . Apple рассмотрела прототип и документ Microsoft и вернула список проблем с дизайном. Microsoft и Apple были очень конкурентны, не смогли договориться об общих целях и не работали вместе.
Примерно в то же время группа сторонних разработчиков встретилась на Всемирной конференции разработчиков Apple (WWDC '91) и попыталась установить стандартизированный формат документов, концептуально основанный на Interchange File Format (IFF) от Electronic Arts . Apple заинтересовалась этой работой и вскоре посвятила несколько инженеров созданию и документированию такой системы. Первоначальная работа была опубликована на компакт-дисках WWDC, а несколько последующих версий — на более поздних компакт-дисках разработчиков. Система документов компонентов работала только с известным форматом документов, который могли использовать все компоненты, и поэтому вскоре стандартизированный формат документов был втянут в работу по программному обеспечению компонентов. Формат быстро изменился с простого, использующего теги, на очень сложный объектно-ориентированный слой сохранения, называемый Bento.
Первоначально проект носил кодовое название «Exemplar», затем «Jedi», «Amber» и, наконец, «OpenDoc».
В марте 1992 года был запущен альянс AIM между Apple, IBM и Motorola, на основе OpenDoc. Taligent был сформирован как основная цель AIM, принял OpenDoc и обещал несколько схожую функциональность, хотя и основанную на совершенно разных базовых механизмах. OpenDoc развивался, но Apple сильно запутала разработчиков, предположив, что его следует использовать только для портирования существующего программного обеспечения, а новые проекты вместо этого должны основываться на Taligent как на предполагаемой будущей ОС для Macintosh. В 1993 году Джон Скалли назвал Project Amber ( кодовое название того, что впоследствии станет OpenDoc) путем к Taligent. [5] [6] Taligent считался будущим Macintosh, а работа над другими инструментами, такими как MacApp, была значительно деприоритетной.
На протяжении всего жизненного цикла OpenDoc аналитики и пользователи, как сообщается, «имели совершенно разные взгляды» на инициативу OpenDoc. Они были в замешательстве относительно своей роли, относительно того, какая часть разработки на основе OpenDoc будет их ответственностью по сравнению с ответственностью IBM и Apple. Никогда не было выпущено много компонентов OpenDoc по сравнению с компонентами ActiveX от Microsoft . Поэтому прием был очень неоднозначным. [7]
Начиная с 1992 года Apple попыталась заменить среду разработки MacApp кроссплатформенным решением Bedrock от Symantec . Think C от Symantec быстро становился инструментом выбора для разработки на Mac. Во время сотрудничества по переносу инструментов Symantec на PowerPC Apple узнала о внутренних инструментах портирования Symantec. Apple предложила объединить существующие концепции и код MacApp с Symantec для создания передовой кроссплатформенной системы. Bedrock начал конкурировать с OpenDoc в качестве решения для будущей разработки.
По мере того, как OpenDoc набирал популярность в Apple, компания начала подталкивать Symantec к включению функциональности OpenDoc в Bedrock. Symantec не была в этом заинтересована и в конечном итоге отказалась от усилий, передав код Apple. Bedrock на тот момент находился на очень ранней стадии разработки, даже после 18 месяцев работы, поскольку команда разработчиков Symantec постоянно страдала от текучки кадров. Apple предложила использовать код для программирования OpenDoc, но больше об этом ничего не было слышно, и Bedrock исчез.
В результате того, что Taligent и Bedrock были официально обещанными будущими платформами Apple, мало усилий было потрачено на обновление MacApp. Поскольку Bedrock был прекращен в 1993 году, а Taligent был прекращен в 1996 году без какого-либо релиза MacOS, это оставило Apple только OpenDoc в качестве современной системы программирования на основе OO.
В середине 1992 года команда разработчиков поняла, что для продвижения системы необходима отраслевая коалиция, и создала Component Integration Laboratories (CI Labs) совместно с IBM и WordPerfect . [ требуется ссылка ] IBM представила OpenDoc, свои уже зрелые System Object Model (SOM) и Distributed SOM (DSOM) — общие библиотечные системы из AIX и OS/2. DSOM позволяет осуществлять сетевое связывание данных между различными платформами в реальном времени, чего не было в OLE и COM. [8] SOM стала важной частью будущих усилий Apple, как в OpenDoc, так и за его пределами.
В марте 1995 года появилось много объявлений об OpenDoc. В состав CI Labs входили Apple, IBM, Novell и SunSoft. IBM предварительно анонсировала на Object World Boston будущий выпуск OpenDoc OS/2 Developer Toolkit версии 2, содержащей полный API, а затем финальный выпуск OpenDoc 1.0 для OS/2 3.0. Прикладная структура CommonPoint компании Taligent имеет функции составных документов на основе OpenDoc. Novell объявила на конференции Brainshare о плане разбить большую часть или все свои продукты на компоненты OpenDoc, начав с приложений WordPerfect , а затем своей операционной системы NetWare . NetWare должна была стать управляемой службой составных документов для сетей, для управления объектными связями и поиска составных документов. Novell объявила о плане сделать OpenDoc основой для создания приложений UnixWare . Она признала, что ее операционным системам не хватает компонентной архитектуры, и что Microsoft никогда не будет лицензировать исходный код для OLE или COM, поэтому Novell должна поддерживать их также через OpenDoc. Более 20 компаний объявили о поддержке OpenDoc в своих продуктах, отметив его технологическое превосходство над OLE и COM от Microsoft, а также его широкую кроссплатформенную поддержку. [8]
В 1996 году OpenDoc был принят Object Management Group , отчасти из-за использования SOM архитектуры Common Object Request Broker Architecture (CORBA), поддерживаемой OMG.
CI Labs никогда не публиковала исходный код, но лицензировала его разработчикам для получения отзывов, тестирования и отладки.
В сентябре 1994 года подсистема OpenDoc была запущена в System 7.5 [9] , а позднее в OS/2 Warp 4.
После трех лет разработки самого OpenDoc, первым продуктом на основе OpenDoc стал веб-браузер CyberDog от Apple в мае 1996 года. Вторым был релиз 1 августа 1996 года двух пакетов компонентов OpenDoc от IBM для OS/2, доступных на веб-сайте Club OpenDoc для 30-дневной бесплатной пробной версии: Person Pak — это «компоненты, направленные на организацию имен, адресов и другой личной информации» для использования с приложениями управления личной информацией (PIM), по цене 229 долларов США ; и Table Pak «для хранения строк и столбцов в файле базы данных» по цене 269 долларов США . Затем IBM планировала выпустить еще 50 компонентов к концу 1996 года. [7]
Текстовый процессор WAV — это полууспешный текстовый процессор OpenDoc от Digital Harbor LLC. Пакет Numbers & Charts — это решение для создания электронных таблиц и трехмерных диаграмм в реальном времени от Adrenaline Software. Lexi от Soft-Linc, Inc. — это лингвистический пакет, содержащий проверку орфографии, тезаурус и простой инструмент перевода, который используют WAV и другие компоненты. Программное обеспечение Nisus Writer от Nisus включало OpenDoc, но его реализация была безнадежно глючной. Bare Bones Software протестировала рынок, сделав свой бесплатный текстовый редактор BBEdit Lite доступным в качестве компонента редактора OpenDoc. RagTime , полностью интегрированный офисный пакет с электронными таблицами, публикацией и редактированием изображений, был перенесен в OpenDoc незадолго до отмены OpenDoc. Выпуск ClarisWorks 5.0 от Apple в 1996 году (предшественник AppleWorks ) планировался для поддержки компонентов OpenDoc, но от этого отказались.
Другое приложение-контейнер OpenDoc, называемое Dock'Em, было написано MetaMind Software в рамках гранта Национального научного фонда и заказано Центром исследований в области математического и естественнонаучного образования, штаб-квартира которого находится в Университете штата Сан-Диего . Цель состояла в том, чтобы включить мультимедийный контент в документы, описывающие учебную программу.
Несколько физических симуляций были написаны MetaMind Software и российской фирмой-разработчиком программного обеспечения Physicon (OpenTeach) как части OpenDoc. [10] Учебные программы по физике для старших и средних школ были сосредоточены на них. С прекращением OpenDoc симуляции были переписаны в виде Java- аплетов и опубликованы Центром как Проект Constructing Physics Understanding (CPU) д-ром Фредом Голдбергом. [11]
Компоненты платформы образовательных микромиров E-Slate изначально были реализованы как части OpenDoc на языке C++ как на MacOS, так и на Windows, позднее (после прекращения поддержки OpenDoc) были реализованы повторно как апплеты Java и, в конечном итоге, как JavaBeans .
У OpenDoc было несколько сотен разработчиков, подписавших контракт. В то время Apple стремительно теряла деньги, и многие в отрасли ожидали, что компания потерпит крах.
В марте 1997 года OpenDoc был прекращен с возвращением Стива Джобса в Apple, который работал в NeXT во время его разработки. Он сказал, что руководство Apple «пустило пулю в голову [OpenDoc]», и большая часть Apple Advanced Technology Group была уволена в результате большого сокращения численности персонала. [12] [13] Другие источники отметили, что Microsoft наняла трех разработчиков ClarisWorks, которые отвечали за интеграцию OpenDoc в ClarisWorks. [14]
Начиная с Mac OS 8.5 , OpenDoc больше не был включен в комплект. [15] AppleShare IP Manager с версий 5.0 по 6.2 полагался на OpenDoc, но AppleShare IP 6.3 устранил это, став первой версией, совместимой с Mac OS 9, выпущенной в 1999 году. [16] Apple официально отказалась от последней торговой марки на название «OpenDoc» 11 июня 2005 года.
приложений смогут сосредоточиться на написании небольших программ, которые выполняют определенные задачи, а не на создании целых пакетов. Это значительно облегчит возвращение в отрасль небольших инновационных компаний-разработчиков программного обеспечения... Приложения OpenDoc будут продаваться так же, как приложения продаются сегодня, и по тем же каналам. Но, как и в случае с любой новой технологией, появятся дополнительные каналы, позволяющие извлечь выгоду из сильных сторон технологии. Вполне вероятно, что со временем для распространения некоторых приложений OpenDoc будут использоваться онлайн-хранилища компонентов. OpenDoc позволит создавать новые интересные онлайн-приложения и сервисы.