Object Windows Library (OWL) — это платформа объектно-ориентированных приложений C++ , предназначенная для упрощения разработки настольных приложений для Windows и (некоторые выпуски) OS/2 .
OWL был представлен Borland в 1991 году и в конечном итоге устарел в 1997 году в пользу их библиотеки визуальных компонентов (VCL). Его основным конкурентом была библиотека классов Microsoft Foundation (MFC). OWLNext, [1] проект с открытым исходным кодом , поддерживаемый сообществом пользователей OWL, продолжает поддерживать OWL, гарантируя, что библиотека и приложения, использующие ее, работают с последней версией Windows и современными компиляторами C++.
В начале 1990-х годов Borland доминировала на рынке C++. В 1991 году Borland представила Borland C++ 3.0, в которую входила OWL 1.0. В то время C++ только начинал заменять C при разработке коммерческого программного обеспечения, чему способствовал рост платформы Windows и быстрое внедрение объектно-ориентированного проектирования . В тот период OWL был популярным выбором для разработки приложений Windows.
В 1992 году Microsoft представила MFC как часть Microsoft C++ 7.0. Будучи аналогичной средой разработки приложений C++ для Windows, MFC сразу же стала основным конкурентом OWL на рынке разработки приложений C++.
OWL 1.0 зависела от виртуальных таблиц динамической отправки (DDVT), собственного расширения C++, которое позволяло программисту связывать сообщения (события) Windows с функциями (обработчиками событий) простым способом и с небольшими накладными расходами во время выполнения. MFC, с другой стороны, использовал решение, не требующее расширения языка.
В 1993 году Borland выпустила Borland C++ 4.0, в которую входила OWL 2.0. В этой версии OWL собственное расширение DDVT было заменено таблицами ответов — решением на основе макросов , совместимым со стандартом C++ и аналогичным используемому MFC. Был включен инструмент преобразования (OWLCVT) для переноса кода из OWL 1.0 в OWL 2.0.
В апреле 1993 года Borland и Novell подписали соглашение о переносе OWL на Novell AppWare Foundation. AppWare Foundation — это API, разработанный Novell как кроссплатформенный , позволяющий развертывать приложения на клиентах Mac, Windows и Unix, а также с несколькими сетевыми службами. Основными инструментами разработки в AppWare были OWL и AppBuilder. [2] Однако в конце 1994 года генеральный директор Novell Рэймонд Ноорда подал в отставку. Планы расширения Novell были пересмотрены, разработка AppWare была остановлена, как и OWL для AppWare. В 1995 году группа первоначальных членов команды купила AppBuilder. В том же году Software UNO предложила коммерческий порт OWL 2.0 на несколько платформ: AIX 3.2.5, DEC OSF/1 AXP, HP-UX 9.03, Linux 1.2, Solaris 2.x, Sun OS 4.1.x и SVR4. для х86. Он назывался WM_MOTIF. [3]
В 1995 году был выпущен Borland C++ 4.5 с OWL 2.5. Поскольку он был выпущен до Windows 95 , Borland пообещал бесплатное обновление в случае любой несовместимости, присутствующей в окончательной версии Windows. В августе 1995 года Microsoft выпустила Windows 95 и Visual Studio 4.0. К тому времени Visual Studio уже затмила Borland C++ по объёмам поставок, и было ясно, что OWL уступает позиции MFC.
В 1996 году Borland выпустила Borland C++ 5 для Windows. Эта версия включала OWL 5, серьезное обновление библиотеки. Хотя OWL 5 получила небольшое обновление с выпуском Borland C++ 5.02 чуть позже, версия 5 стала окончательной версией OWL от Borland.
В 1997 году Borland выпустила C++Builder и объявила о прекращении поддержки Borland C++. OWL была включена в состав компакт-диска Companion , поставляемого с C++Builder, но компания Borland прекратила поддержку и дальнейшее развитие библиотеки.
В конце 1999 года Borland прекратила продажу Borland C++ и OWL.
Вскоре после того, как компания Borland завершила разработку OWL, ее обслуживание взяла на себя группа пользователей во главе с Юрой Бидусом. Эти усилия превратились в проект с открытым исходным кодом OWLNext [1], который в настоящее время размещен на сайте SourceForge . OWLNext — это современное обновление и расширение OWL с поддержкой последних версий Windows и современных компиляторов C++ от Microsoft и Embarcadero.
Более поздние версии OWLNext были выпущены через SourceForge.