Similar presentations:
J2EE шаблоны
1.
Delivering Excellence in Software EngineeringJ2EE шаблоны
® 2006. EPAM Systems. All rights reserved.
2. J2EE модель
® 2006. EPAM Systems. All rights reserved.3. Основные требования при разработке web приложений
• Расширяемость (Extensibility)• Масштабируемость (Scalability)
• Надежность (Reliability)
• Своевременность (Timeliness)
® 2006. EPAM Systems. All rights reserved.
4. Расширяемость
• Требования к программному продуктуизменяются.
• Один из главных вопросов - как легче
произвести изменения.
• Зависимости в приложении растут с ростом
приложения.
• Приложение труднее изменить чем больше в
нем зависимостей.
• Использование интерфейсов служит
уменьшению зависимостей.
® 2006. EPAM Systems. All rights reserved.
5. Теники для увелечения расширяемости
• Уменьшение зависимости компонентов в системе.• Объединение общей функциональности в одном
классе.
• Reusing – вынесение повторяющейся
функциональности в отдельные методы.
® 2006. EPAM Systems. All rights reserved.
6. Масштабируемость
Основная проблема масштабируемости –интеграция между слоями приложения.
® 2006. EPAM Systems. All rights reserved.
7. Надежность
• Одни и те же действия должнывызывать одни и те же результаты.
• Результаты работы приложения должны
быть предсказуемы.
• Любой пользователь должен получать
одинаковое поведение приложения.
® 2006. EPAM Systems. All rights reserved.
8. Своевременность
• Вовремя выполненное приложение.• Использование сложных шаблонов
удлинняет разработку приложения.
• Использование generic (настраиваемых)
шаблонов может служить решению
многих проблем и сокращению времени
разработки продукта.
® 2006. EPAM Systems. All rights reserved.
9. Уровень представления
® 2006. EPAM Systems. All rights reserved.10. MVC шаблон
® 2006. EPAM Systems. All rights reserved.11. Работа MVC в J2EE
® 2006. EPAM Systems. All rights reserved.12. Front Controller Pattern
® 2006. EPAM Systems. All rights reserved.13. Работа Front controller
® 2006. EPAM Systems. All rights reserved.14.
Front controller Deployment<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
...
<servlet>
<servlet-name>FrontController</servlet-name>
<servlet-class>FrontController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FrontController</servlet-name>
<url-pattern>/pages/*</url-pattern>
</servlet-mapping>
...
</web-app>
® 2006. EPAM Systems. All rights reserved.
15. Шаблон Decorator
® 2006. EPAM Systems. All rights reserved.16. Использование decorating filter
® 2006. EPAM Systems. All rights reserved.17. Бизнес уровень
• Domain модель• Бизнес логика
® 2006. EPAM Systems. All rights reserved.
18. Шаблон Data Transfer Object (DTO)
® 2006. EPAM Systems. All rights reserved.19. Шаблон Data Access Object (DAO)
® 2006. EPAM Systems. All rights reserved.20. Шаблон Business delegate
® 2006. EPAM Systems. All rights reserved.21. Антипатерны в J2EE и их причины
• Отсутствие опыта• Нечитабельный код
• Cut and Paste разработка
® 2006. EPAM Systems. All rights reserved.
22. Архитектурные антипатерны
• Уменьшение уровней приложения.• Коллекции.
• Кэширование.
® 2006. EPAM Systems. All rights reserved.
23. Антипатерны уровня представления
• Волшебный сервлет.• Составной JSP.
• Перегруженная сессия.
® 2006. EPAM Systems. All rights reserved.