- •Распределенные события:
- •4. Проектирование сложных объектов. Основные принципы проектирования. Аспекты и стадии проектирования
- •5. Развитие парадигмы программирования
- •6. Функциональное моделирование. Стандарты idef0, idef3.
- •7. Информационное моделирование. Стандарты idef1, idef1x/
- •8. Средства и элементы статистических и динамических моделей объектно-ориентированных систем (статические и динамические диаграммы uml).
- •9.Порождающие паттерны. Назначение, обобщенные свойства, применение. Пример реализации.
- •10. Структурные паттерны. Назначение, обобщенные свойства, применение. Пример реализации.
- •11.Паттерны поведения. Назначение, обобщенные свойства, применение. Пример реализации
- •12. Язык xml: средства, назначения и особенности использования. Xml и dtd.
- •13. Язык xml и схемы данных.
- •14.Методы и средства обработки xml документов с использ-ем моделей dom и sax, преимущ-ва и недостатки.
- •15.Языки Extensible Markup Language(xsl) и xsl Transformations (xslt): назначение и особенности использования.
- •16. Язык xPath и его применение для доступа к элементам xml.
- •17.Фазы, итерации и циклы разработки. Рабочие процессы, модели и артефакты.
- •18. Совместная разработка: Методы и средства тестирования и отладки программных приложений
- •19. Особенности модель распределённых объектов. Модель rpc.
- •20. Классы и интерфейсы механизма rmi . Архитектура и конфигурирование rmi
- •Разработка rmi приложений. Примеры. Соглашения о передаче данных
- •Corba, назначение, терминология. Архитектура управления объектами (ома). Объектная модель corba.
- •Основные сервисы Corba, модель организация приложений corba, примеры.
- •Orb: понятие, назначение, основные функции. Принципы организации запросов в orb. Использование стандарта iiop.
- •Объектный адаптеры boa и роа. Назначение и основные функции. Статические и динамические вызовы в corba.
- •Язык idl, основные характеристики языка, создание распределенных объектов на idl Связь rmi и corba.
- •Понятие прозрачность, серванта, использование посредников proxies в corba. Name сервис.
- •Платформа j2ee. (основные технологии). Когда следует применять Enterprise JavaBeans. Типы ejb, обобщенная архитектура, принципы функционирования и программное обеспечение.
- •Понятие, определение и использование удаленного (Remote) и локального интерфейсов. Их применение и программная реализация (примеры).
- •Понятие, определение и использование собственного (home) интерфейса. Их программная реализация (примеры)
- •Сеансовые (Session) компоненты ejb без состояния и с состоянием, их особенности и применение.
- •Общие принципы развертывание сеансовых компонентов ejb. Пример текста дескриптора поставки.
- •Организация и особенности Entity компонент с сохранением (персистентностью) управляемым контейнером (cmp).
- •Организация и особенности Entity компонент с сохранением (персистентностью) управляемым компонентом (bmp).
- •Особенности реализации (home) и (Remote) интерфейсов для Entity компонентов.
- •Контейнер ejb, понятие, назначение, основные функции.
- •Дескриптор поставки, структура и общие принципы организации кода. Пример описания на xml.
- •Jndi, структура, назначение, роль в развертывании и функционировании.
- •Архитектура совместного использования web и ejb компонентов, Ejb-транзакции.
- •Доступ к компонентам ejb из различных приложений клиента (web, Console, gui).
- •Компоненты ejb, управляемые сообщениями. Обмен сообщениями с помощью java Message Service (jms) .
- •Модели использования jms. Основные объекты и термины, их назначение (алгоритм реализации).
- •Message Driven Beans (mdb), жизненный цикл компонентов. Особенности применения и функционирования, реализующие методы (примеры).
- •Технология jsf Базовые концепции технологии и функциональные возможности jsf
- •Inversion of Control контейнер
Компоненты ejb, управляемые сообщениями. Обмен сообщениями с помощью java Message Service (jms) .
JMS - это стандарт обмена сообщениями, который позволяет компонентам приложения J2EE создавать, посылать, получать и читать сообщения. Он допускает распределенные коммуникации со свободным соединением, надежные и асинхронные.
Бин, управляемый сообщениями, - корпоративный бин, который позволяет приложениям J2EE асинхронно обрабатывать сообщения. Он действует, как слушатель сообщений JMS, который подобен слушателю событий, за исключением того, что вместо событий, он принимает сообщения. Сообщения могут отправляться любым компонентом J2EE - клиентским приложением, другим корпоративным бином или Web-компонентом - или при помощи приложения JMS или системы, которая не использует технологию J2EE.
В Messaging System приложения общаются не напрямую, а посредством MOM (промежуточного программного обеспечения). Если один компонент системы хочет послать сообщение другому компоненту, он посылает данное сообщение MOM, а уж MOM затем пересылает его адресату. MOM реализует асинхронность обмена сообщениями.
Самым очевидным различием между бинами, управляемыми сообщениями, и бинами сеанса и бинами сущности является то, что клиенты не обращаются к бинам, управляемым сообщениями, через интерфейсы. В отличие от бинов сеанса и бинов сущностей, бины, управляемые сообщениями, имеют только класс бина.
Экземпляры бинов, управляемых сообщениями, не сохраняют данных или диалоговых состояний конкретного клиента.
Все экземпляры бина, управляемого сообщениями, эквивалентны, что позволяет контейнеру EJB назначать сообщение любому экземпляру бина, управляемого сообщениями. Контейнер может объединять эти экземпляры, что позволяет обрабатывать потоки сообщений параллельно.
Один бин, управляемый сообщениями, может обрабатывать сообщения от многих клиентов.
Когда поступает сообщение, контейнер вызывает метод onMessage для обработки сообщения. Метод onMessage обычно выявляет, к какому из пяти типов JMS-сообщений относится данное, и обрабатывает его в соответствии с бизнес-логикой приложения. Метод onMessage может вызвать вспомогательные методы или может вызвать бин сеанса или бин сущности, чтобы обработать информацию в сообщении или сохранить ее в базе данных.
Использование асинхронных сообщений делает возможным разработку слабо связанных систем (или приложений). Эти системы более эластичны в случае сбоев и легко расширяемы по мере появления новых приложений. В добавок к этому, сервис сообщений является эффективным средством обмена запросами между приложениями.
Java Message Service (JMS) предоставляет службы асинхронных сообщений для разработчиков приложений на Java.
Интеграция JMS и EJB позволяет корпоративным компонентам (enterprise beans) эффективно участвовать в работе слабо связанных систем. Посредством такой интеграции корпоративные компоненты, управляемые сообщениями, могут получать JMS-инструкции и действовать согласно им, без привлечения (или даже существования) клиента пользовательского интерфейса. Эта новая возможность делает EJB превосходным средством для разработки распределенных бизнес-служб. Кроме того, любой из EJB-компонентов может отправлять асинхронные сообщения через JMS API (прикладной программный интерфейс JMS).
Message-Oriented Middleware , преимущества и модель использования таких средств, JMS .
Messaging System– это распределенная система, основанная на асинхронном обмене сообщениями(messages) между компонентами системы. В Messaging System приложения общаются не напрямую, а посредством MOM(промежуточного программного обеспечения). Если один компонент системы хочет послать сообщение другому компоненту, он посылает данное сообщение MOM, а уж MOM затем пересылает его адресату.
MOM реализует асинхронность обена сообщениями, что позволяет избавиться от недостатков предыдущих систем, в частности синхронных. Перечислим указанные преимущества МОМ:
Приложение, пославшее сообщение, не должно ждать ответа, и может продолжать свою текущую деятельность (только для асинхронного).
Ни приложение, посылающее сообщение, ни адресат данного сообщения не обязаны быть активными в одно и то же время (только для асинхронного). Если адресат сообщения не активен, то MOM гарантирует, что сообщение будет доставлено, как только адресат станет активным (только для асинхронного).
Компоненты системы не связаны напрямую друг с другом (decoupled), а потому возможно перенесение компонентов с одного хоста на другой в runtime без ущерба для работоспособности системы (только для асинхронного).
Существует две "основных" модели обмена сообщениями:
point-to-point
publish-subscribe (pub-sub)
Point-to-point модель применяется, когда одному или нескольким компонентам (так называемые senders) необходимо послать сообщение одному компоненту-адресату (receiver).
Publish-subscribe (Pub-sub) модель применима, когда одному или нескольким компонентам (publishers) необходимо послать сообщение одному или нескольким компонентам-адресатам (subscribers). Данная модель основана на понятии message topic.
Java Message Service (JMS) – это Java API (то есть набор интерфейсов и классов) для работы с Message-Oriented Middleware (МОМ). Данный набор определен в пакете javax.jms в дереве пакетов J2EE.
JMS - это стандарт обмена сообщениями, который позволяет компонентам приложения J2EE создавать, посылать, получать и читать сообщения. Он допускает распределенные коммуникации со свободным соединением, надежные и асинхронные