Принципы проектирования и шаблоны проектирования ОО
* Leveraging OO design patterns which adhere to best practices
* Determining the appropriate design patterns for requirements
* Singleton
* Strategy
* Template
* Proxy
* Observer
Шаблоны проектирования и Enterprise Java
* Analyzing goals of Enterprise Java applications
* Planning for distributed applications
* Communicating between JVMs
* Implementing Remote Method Invocation
Построение бизнес-уровня
Моделирование сущностей и вариантов использования
* Realizing an application's domain model
* Business Object
* Application Service
Снижение влияния известных узких мест производительности
* Eliminating inter-tier dependencies
* Service Facade
* Session Facade
* Business Delegate
Нахождение объектов
* Singleton
* Factory
* Inversion of Control
* Service Locator
Реализация бизнес-логики с помощью сессионных компонентов
* Injecting services to business logic using Session Beans
* Conversing with client using Stateful Session Beans
Связь со службами сообщений
* Decoupling client interaction with the Java Message Service (JMS)
* Simplifying JMS
* Transmitting and receiving messages with JMS
* Message-driven beans
Управление ресурсами на уровне интеграции
Абстрагирование слоя данных
* Implementing effective Data Access Objects (DAO)
* Highlighting difficulties associated with Object/Relational Mapping
* Analyzing persistence technologies: Hibernate, JPA, EJB 3.0
* Optimizing data transfer using the Transfer Object Pattern
Веб-сервисы
* Exposing Beans as Web Services with annotations
* Web Service Broker pattern
Эффективная обработка транзакций
* Considering local and global transaction needs
* Selecting optimistic or pessimistic locking
Структурирование уровня представления
Разделение логики управления и представления
* Realizing the role of JSPs and servlets
* Constructing Model View Control (MVC) architectures
Планирование и реализация сложных рабочих процессов
* Front Controller
* Dispatcher View
* Service to Worker
Локализация разрозненной логики
* Improving maintainability of algorithms
* Writing modular JSPs
* Intercepting Filter
* View Helper
* Composite View