BlackBox Component Builder
Материал из Википедии — свободной энциклопедии
BlackBox Component Builder (далее BlackBox) - это интегрированная среда разработки, оптимизированная для разработки ПО, основанного на компонентах. В неё входят: инструменты разработки, библиотека повторно используемых компонентов, каркас приложений, упрощающий создание надежных пользовательских компонентов и приложений, и среда поддержки для компонентов во время исполнения.
В системе BlackBox разработка приложений и их компонентов производится на Компонентном Паскале (в дальнейшем КП) — наследник Паскаля, Модулы-2 и Оберона. Этот язык программирования предоставляет такие современные возможности, как: полную безопасность типов, компоненты (в виде модулей), динамическое связывание компонентов и сборку мусора. Сам BlackBox целиком написан на КП: все компоненты в библиотеке, весь инструментарий разработчика, включая компилятор КП, и даже низкоуровневая система поддержки времени исполнения со сборщиком мусора. Несмотря на всю свою мощь, Компонентный Паскаль — маленький язык, легкий для изучения и обучения.
Библиотека компонентов, поставляемая с BlackBox, содержит: компоненты для элементов пользовательского интерфейса (такие как командные кнопки, кнопки-флажки), различные компоненты, предоставляющие функциональность для обработки текстов (подсистема Text); различные компоненты, предоставляющие возможность управления расположением элементов графического интерфейса пользователя (подсистема Form); компоненты доступа к базам данных (подсистема Sql); коммуникационные компоненты (подсистема Comm); а также некоторое количество компонентов инструментов разработки, таких, как: компилятор, просмотрщик интерфейсов, отладчик и т. д. (подсистема Dev).
Взаимодействие между компонентами управляется Каркасами системы BlackBox (BlackBox Component Builder's Frameworks). Они состоят из небольшого числа дополняющих друг друга программных интерфейсов. Эти интерфейсы значительно проще и более безопасны и, кроме того, платформно-независимы по сравнению с базовыми API, такими как Windows API. Для интерактивных приложений эти интерфейсы определяют довольно уникальную архитектуру составных документов. Эта архитектура сделала возможной быструю разработку приложений (RAD), включая быструю разработку новых компонентов интерфейса пользователя. Особенно много внимания конструкция каркаса уделяет безопасному взаимодействию между компонентами. Это условие становится чрезвычайно важным для крупномасштабных программных проектов, в которые входят компоненты от различных поставщиков и которые характеризуются большим временем жизни. Объединение продуктивности RAD с высоким уровнем надёжности архитектуры было одной из главных целей разработки системы BlackBox. Была сделана попытка создать гибкую и нетребовательную к ресурсам среду, не жертвуя ни надёжностью, ни удобством долгосрочного сопровождения проектов, созданных в этой среде. Это было достигнуто благодаря архитектуре, в которой система разделяется на компоненты с четко и строго определёнными интерфейсами. Программное обеспечение развивается эволюционно — через добавление, обновление или удаление отдельных компонентов.
Среда времени выполнения системы BlackBox поддерживает динамическое связывание и загрузку (и выгрузку) компонентов. За счёт этого система может быть расширена прямо во время выполнения без повторных компиляции, связывания или перезапуска полученного кода. Объекты компонентов (т.е. экземпляры классов, содержащихся в компонентах) автоматически удаляются, когда на них больше нет ссылок. Сборка мусора — ключевое свойство безопасности системы времени выполнения, так как она позволяет предотвратить такие ошибки, как утечки памяти и "висячие" указатели, которые практически невозможно избежать в среде, столь сильно ориентированной на использование компонент, как Блэкбокс.
Copyright (c) 1994 - 2006 Oberon microsystems, Inc., Switzerland. All rights reserved. Publication on ru.wikipedia.org permitted by Oberon microsystems.
Русский перевод: Лось В.В.