Распределенные компоненты

Библиотеки компонентов

Одна из самых многообещающих сторон внедрения компонентной архитектуры — быстрая разработка приложений. В условиях распространения компонентного подхода программист сможет выбирать компоненты из библиотеки и составлять из них, как из деталей конструктора, законченные приложения. Сборка приложений из стандартных блоков значительно повышает эффективность работы программистов. Этот процесс уже начался с созданием управляющих элементов ActiveX (ранее известных как управляющие элементы OLE). Программисты на Visual Basic, C, C++ и Java могут воспользоваться управляющими элементами ActiveX для ускорения разработки своих приложений и страниц Web. Конечно, каждому приложению по-прежнему будут нужны и некоторые специализированные компоненты, но в основном можно будет обойтись стандартными.

С возрастанием производительности и общего значения сетей потребность в приложениях, состоящих из разбросанных по разным местам фрагментов, будет только повышаться. Компонентная архитектура помогает упростить процесс разработки подобных распределенных приложений. Приложения клиент-сервер — это уже шаг в сторону компонентной архитектуры, поскольку они разделены на две части, клиентскую и серверную.

Создать из обычного приложения распределенное легче, если это обычное приложение состоит из компонентов. Во-первых, оно уже разделено на функциональные части, которые могут располагаться вдали друг от друга. Во-вторых, поскольку компоненты заменяемы, вместо некоторого компонента можно подставить другой, единственной задачей которого будет обеспечивать связь с удаленным компонентом.

Например, на рис. 1-5 компонент C и компонент D расположены в сети на двух удаленных машинах. На локальной машине они заменяются двумя новыми компонентами, переадресовщиками C и D. Последние переправляют запросы от других компонентов к удаленным C и D по сети. Для приложения на локальной машине неважно, что настоящие компоненты C и D где-то в другом месте. Точно так же для самих удаленных компонентов не имеет значения их расположение. При наличии подходящих переадресующих компонентов приложение может совершенно игнорировать фактическое местоположение своих частей.



Рис. 1-5.Расположение компонентов на удаленных машинах в сети.

 

Теперь, когда мы познакомились с некоторыми достоинствами компонентов, посмотрим, что требуется для их создания.