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

В данном курсе дается обзор общеизвестных и новых шаблонов, специфичных для Java SDK и EE разработки. Слушатели изучают тонкости и эволюцию Java технологий, основанных на шаблонах, с упором на соглашения, принятые в Java EE 6. Практические упражнения позволяют слушатлям научиться определять, применять шаблоны и осуществлять их рефакторинг в коде с помощью NetBeans или Eclipse IDE и сервера приложений GlassFish Application Server v3. Кроме того, слушатели изучают подмножество обозначений UML вместо кода для осуществления коммуникации при проектировании.

Слушатели обучаются:

Необходимая предварительная подготовка:

Цели:

Аудитория курса:

Программа

Обзор объектно-ориентированных принципов в Java

Применение OO концепций к Java. Применение OO принципов к Java. Задачи OO языка. Интерпретация обозначений Unified Modeling Language (UML) и создание UML диаграмм. Выбор шаблонов проектирования.

Обзор набора из четырех шаблонов

Основные шаблоны поведения, разработки и структуры. Применение шаблона Facade. Применение шаблона Strategy. Применение шаблона Observer Применение шаблона Composite. Обзор шаблонов Model-View-Controller (MVC).

Шаблоны реализации в Java

Использование шаблонов реализации, спроектированных для Java. Что влияет на шаблоны класса, состояния и поведения. Отличие шаблонов, идиом и рефакторинга друг от друга.

Изменения в Java EE технологии

Задачи проектирования Java EE модели. Улучшения в Java EE 6 модели.

Реализация шаблонов интеграции

Описание шаблонов проектирования для интеграционного уровня. Обзор Java EE интеграционных изменений, использующих шаблонов проектирования. Варианты применения шаблонов интеграционного уровня.

Реализация шаблонов в бизнес-компонентах

Роль enterprise bean. Описание шаблонов проектирования для бизнес-уровня.

Реализация шаблонов инфраструктуры в Java EE

Роль Java EE шаблонов инфраструктуры. Описание шаблона Service Starter. Описание шаблона Singleton. Описание шаблона Bean Locator Описание шаблона Resource Binder.

Реализация дополнительных шаблонов инфраструктуры

Как работают Java EE интерсепторы. Описание шаблона Dependency Injection Extender. Описание шаблона Payload Extractor. Описание шаблона Context Holder. Описание шаблона Thread Tracker.

Анти-шаблоны

Закон Leaky Abstractions. Определение анти-шаблонов. Описание анти-шаблонов интеграционного уровня. Описание анти-шаблонов бизнес-уровня. Описание анти-шаблонов презентационного уровня.

Выбор шаблонов для архитектуры

Определение ролей архитектора, дизайнера и разработчика. Связь между шаблонами проектпрования и архитектурой. Общие указания по применению шаблонов к архитектурным решениям.