@ARTICLE{26583204_128367736_2014, author = {Е. М. Гринкруг}, keywords = {, реализация, компонентная модель, тип, прототиппрограммный компонент}, title = {Прототипы и типы составных объектов в компонентно-ориентированной архитектуре}, journal = {Бизнес-информатика}, year = {2014}, number = {2 (28)}, pages = {24-32}, url = {https://bijournal.hse.ru/2014--2 (28)/128367736.html}, publisher = {}, abstract = {Гринкруг Ефим Михайлович - кандидат технических наук, доцент кафедры управления разработкой программного обеспечения, отделение программной инженерии, факультет бизнес-информатики, Национальный исследовательский университет «Высшая школа экономики» Адрес: 101000, г. Москва, ул. Мясницкая, д. 20.E-mail: egrinkrug@hse.ru      В  работе рассматривается компонентно-ориентированная программная архитектура, реализованная для Java-платформы и поддерживающая ‘event-driven’ вычисления. Используемая компонентная модель расширяет динамические возможности стандартной компонентной модели JavaBeans и поддерживает композицию составных компонент во время исполнения без кодогенерации. Показано, что в рамках стандартной компонентной модели JavaBeans динамическая композиция компонент сопряжена с переходом от объектно-ориентированного программирования, используемого при создании базовых компонент, к prototype-ориентированной идеологии  программирования при использовании составных компонент. Предложено обобщение понятия типа объектов, позволяющее единобразно оперировать как базовыми компонентами, так и динамически скомпонованными компонентами. Реализация предложенного обобщения типов объектов опирается на дополнительный уровень виртуализации, который обеспечивает среду исполнения для программных компонент, определенных в соответствии с предложенной компонентной моделью. Рассматриваются способы реализации различных типов объектов, с которыми оперирует среда исполнения, и основные предоставляемые ею операции. Предложен способ динамического создания составных компонент, основанный на преобразовании составного прототипа в инстанциируемый тип составных объектов. Инстанциирование составных компонент обеспечивает более эффективное функционирование приложений (в смысле ресурсов памяти и времени), чем клонирование их составных прототипов. Динамически определяемые составные компоненты могут использоваться объектно-ориентированным образом наравне с базовыми компонентами - как для реализации функциональности в приложениях, так и в качестве элементов композиции составных прототипов, преобразуемых в новые составные компоненты. Предлагаемая компонентная архитектура может использоваться при реализации определяемых пользователем типов в декларативных языках моделирования.}, annote = {Гринкруг Ефим Михайлович - кандидат технических наук, доцент кафедры управления разработкой программного обеспечения, отделение программной инженерии, факультет бизнес-информатики, Национальный исследовательский университет «Высшая школа экономики» Адрес: 101000, г. Москва, ул. Мясницкая, д. 20.E-mail: egrinkrug@hse.ru      В  работе рассматривается компонентно-ориентированная программная архитектура, реализованная для Java-платформы и поддерживающая ‘event-driven’ вычисления. Используемая компонентная модель расширяет динамические возможности стандартной компонентной модели JavaBeans и поддерживает композицию составных компонент во время исполнения без кодогенерации. Показано, что в рамках стандартной компонентной модели JavaBeans динамическая композиция компонент сопряжена с переходом от объектно-ориентированного программирования, используемого при создании базовых компонент, к prototype-ориентированной идеологии  программирования при использовании составных компонент. Предложено обобщение понятия типа объектов, позволяющее единобразно оперировать как базовыми компонентами, так и динамически скомпонованными компонентами. Реализация предложенного обобщения типов объектов опирается на дополнительный уровень виртуализации, который обеспечивает среду исполнения для программных компонент, определенных в соответствии с предложенной компонентной моделью. Рассматриваются способы реализации различных типов объектов, с которыми оперирует среда исполнения, и основные предоставляемые ею операции. Предложен способ динамического создания составных компонент, основанный на преобразовании составного прототипа в инстанциируемый тип составных объектов. Инстанциирование составных компонент обеспечивает более эффективное функционирование приложений (в смысле ресурсов памяти и времени), чем клонирование их составных прототипов. Динамически определяемые составные компоненты могут использоваться объектно-ориентированным образом наравне с базовыми компонентами - как для реализации функциональности в приложениях, так и в качестве элементов композиции составных прототипов, преобразуемых в новые составные компоненты. Предлагаемая компонентная архитектура может использоваться при реализации определяемых пользователем типов в декларативных языках моделирования.} }