Свойства архитекутуры Enterprise JavaBeans.
Компоненты EJB (The Enterprise JavaBeans component) выполняются внутри EJB-контейнера (The Enterprise JavaBeans container), который, в свою очередь, выполняется внутри EJB-сервера. Любой сервер, который в состоянии поддерживать EJB-контейнеры и предоставлять им необходимые сервисы, может быть EJB-сервером. EJB-компонент представляет из себя Java-класс, который реализует некую бизнес-логику. Все остальные классы в EJB-системе либо реализуют поддержку клиент / сервер взаимодействий между компонентами, либо реализуют некие сервисы для компонентов.
Компонент EJB определяется как комбинация трёх составных элементов и описания его установки и применения:
EJB-контейнер реализует для находящихся в нем компонентов такие сервисы, как транзакции (transaction), управление ресурсами, управление версиями компонентов, их мобильностью, настраиваемостью, мобильностью, жизненным циклом. Разработчик EJB-компонента может просто вызывать соответствующие методы у контейнера.
Клиентские приложения вызывают методы на удаленных EJB-компонентах через EJB-объект (EJB-object). EJB-объект реализует "удаленный интерфейс" (remote interface) EJB-компонента на сервере. EJB-объект реализует лишь бизнес-интерфейс для EJB-компонента, являясь, в некотором смысле, "промежуточным" звеном между клиентом и EJB-компонентом.
EJB-объекты и EJB-компоненты представляют собой разные классы. Хотя они реализуют один и тот же интерфейс (интерфейс, описанный для EJB-компонента), но при этом они выполняют совершенно разные функции. EJB-компонент выполняется на сервере, внутри EJB-контейнера и реализует бизнес-логику, в то время как EJB-объект выполняется у клиента и удаленно вызывает методы у EJB-компонента.
Итак, под платформой Microsoft.NET следует понимать интегрированную систему (инфраструктуру) средств разработки, развертывания и выполнения сложных, распределенных программных систем.
Здесь набор базовых классов обеспечивает, например, работу со строками, ввод-вывод данных, многопоточность. Набор классов для работы с данными предоставляют возможность использования SQL-запросов, ADO.Net и обработки XML данных и так далее.
Общеязыковая среда выполнения (Common Language Runtime, CLR) активизирует исполняемый код, выполняет для него проверку безопасности, располагает этот код в памяти и исполняет его, обеспечивает сборку мусора. Для обеспечения возможности многоязыковой разработки ПО программный код, получаемого после компиляции программы на одном из алгоритмических языков платформы MS.Net, представляется на общем промежуточном языке (Common Intermediate Language или CIL). Сборки (файлы на CIL) перед своим исполнением с помощью JIT-компилятора (Just-In-Time compilers) переводятся с программного кода на промежуточном языке (CIL-кода) в машинный (native) код платформы исполнения.