Remove ads

Компонентно-ориентированное программирование (англ. component-oriented programming, COP) — парадигма программирования, существенным образом опирающаяся на понятие компонента — независимого модуля исходного кода программы, предназначенного для повторного использования и развёртывания и реализующегося в виде множества языковых конструкций (например, «классов» в объектно-ориентированных языках программирования), объединённых по общему признаку и организованных в соответствии с определёнными правилами и ограничениями.

Remove ads

История

Компонентно-ориентированный подход появился в 1987 году[1], когда Никлаус Вирт предложил для языка «Оберон» паттерн написания блоков. Данный паттерн сформировался при изучении проблемы «хрупких» базовых классов, возникающей при построении объёмной иерархии классов. Паттерн заключался в том, что компонент компилируется отдельно от других, а на стадии выполнения — необходимые компоненты подключаются динамически.

В 1989 году[1]Бертран Мейер предложил идею единого взаимодействия между вызываемым и вызывающим компонентами. Эта идея воплотилась в виде готовых решений: CORBA, COM, SOAP. Впоследствии поддержка со стороны языка была реализована в Компонентном Паскале.

Ситуация с внедрением компонентно-ориентированного подхода (как дополнительного ограничения[какого?] для существующих парадигм программирования) аналогична с появлением структурного программирования, которое ограничивало неупорядоченные переходы управления с помощью оператора «GOTO», затруднявшего чтение кода программы для уже существующих языков и не привносившего новых конструкций.

Реализация в различных языках программирования

Компонентно-ориентированный подход может применяться во многих языках программирования с помощью стандартных конструкций (таких как: классы, интерфейсы, пакеты, модули).

  • Существуют языки программирования, реализующие на конструктивном[неизвестный термин] уровне компонентно-ориентированное программирование:
  • В рамках языка Java — компонентно-ориентированное программирование реализуется посредством компонентов, называемых JavaBeans, поддержанных в одной из ранних спецификаций языка;
  • На платформе .NET — реализован компонентно-ориентированный подход, обеспечивающий создание и повторное использование компонентов для любого языка программирования, поддерживаемого платформой.
Remove ads

Примечания

Ссылки

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.

Remove ads