Композитная структура программ
Традиционные программы имеют «монолитную» модульную структуру, состоящую из жёстко связанных подпрограмм (рис. 9.1 а). Эти связи организует программист ещё на этапе кодирования программы. На этапе выполнения эти связи не могут изменяться, а подпрограммы находятся в монопольном владении основной программы. Никакая другая программа не имеет доступа к этим подпрограммам. Монолитную структуру программ в корне изменяет переход к композитным (компонентным) структурам, в которых некоторые из подпрограмм выводятся из состава монолитной программы и передаются на хранение в отдельный сервер, где организуется их выполнение по запросу вызывающей программы (рис. 9.1 б). Причём запрашивать такую услугу может не только программа-поставщик, но и любая другая компонента корпоративной информационной системы. (а) (б) Рис. 10.1. Монолитная (а) и композитная (б) структура программ Таким образом, структура композитной программы оказывается распределённой между сервером приложения и сервером, на котором хранятся её компоненты. Вырванные из контекста основной программы подпрограммы становятся автономно управляемыми модулями, которыми могут пользоваться другие, не обязательно композитные, программы (с помощью того же механизма доступа «по запросу»). Таким образом, композитная организация программ является ещё одним способом их интеграции в единую программную систему, основанную на общем способе взаимодействия своих компонент. Этот способ интеграции начинает всё шире использоваться для интеграции корпоративных информационных систем, приходя на смену достаточно сложным системам интеграции корпоративных приложений, таким как Enterprise Application Integration (EAI).
|