Шаблоны проектирования масштаба предприятия (Enterprise Patterns) с практикой применения искусственного интеллекта (AI)
Содержание курса
Модуль 1: GoF и базовые паттерны проектирования.
- Обзор «Банды четырех»: порождающие/структурные/поведенческие паттерны.
- Где паттерны помогают, а где создают избыточность.
- Нефункциональные требования (SLA, безопасность, масштабирование, наблюдаемость).
- ИИ как новый «тип зависимости»: задержки, стоимость, качество ответа, отказоустойчивость, комплаенс.
Модуль 2: Сервер приложений Jakarta EE: сервисы и конфигурация.
- JDBC, JNDI, JPA, ORM, JMS, безопасность.
Модуль 3: Singleton и управление жизненным циклом компонентов.
- Singleton как инструмент (и как источник проблем) в enterprise-контексте.
- Альтернативы: DI/IoC-контейнер, scopes, фабрики.
Модуль 4: Servlet и MVC: почему классическое понимание устарело.
- Servlet как историческая основа web-архитектуры.
- Современные альтернативы и причины ухода от классического MVC на сервере.
Модуль 5: JSF сегодня и переход к реактивным подходам.
- Где JSF уместен, где нет.
- Современная UI-парадигма: реактивность, компоненты, поток данных.
Модуль 6: Серверная часть: микросервисы как базовая архитектура.
- Границы сервисов, контракты, совместимость.
- Паттерны взаимодействия: синхронные вызовы, асинхронность, события.
Модуль 7: Метаданные и аннотации как основа современной разработки.
- Аннотации, декларативные политики (транзакции, безопасность, валидация).
- JSON как основной формат обмена.
Модуль 8: Транзакции и JPA/ORM как «паттерны» сервера приложений.
- Entity Manager, работа с сущностями.
Модуль 9: Асинхронность на сервере и паттерны Observer/Proxy.
- Асинхронные механизмы в enterprise-приложениях.
Модуль 10: HTTP и прокси как реализация стандартных паттернов.
- HTTP как контрактный протокол.
- Прокси/шлюзы как архитектурные элементы и паттерны.
Модуль 11: Реактивные технологии и паттерны в основе клиентских приложений.
- Наблюдаемые состояния, события, эффекты.
Модуль 12: Хуки (перехватчики) и взаимодействие со Store на примере React.
- Наблюдаемые состояния, события, эффекты.
- Типовые схемы (data fetching, кеширование, синхронизация).
Модуль 13: Observer на клиенте на основе React.
- Подписки, события, реактивное обновление UI.
Модуль 14: Дополнение "с учетом ИИ".
- Использование ИИ как инженерного инструмента: генерация черновиков (DTO/контракты/заготовки тестов), рефакторинг, ревью, поиск причин дефектов — с обязательной валидацией результата и фиксацией допущений.
- Проектирование интеграции AI/LLM в enterprise-систему (на уровне архитектуры):
- выделение AI-адаптера/шлюза;
- управление промптами как артефактами (шаблоны, версии, тесты);
- требования к логированию, трассировке и безопасной обработке данных;
- деградация при отказе AI-компонента (fallback/таймауты/ограничения).
