Введение в Java Enterprise

Концепция курса

 

Задачи курса:

Познакомить слушателей с основным стеком преимущественно серверных-компонентных технологий Java Enterprise используемом в корпоративном секторе (финансовое управление и банковское дело, управление и автоматизация бизнеса, e-commerce)

Изучить:

  • Общие принципы построения Enterprise приложений (Java EE/Spring)
  • Обзор стеков/диалектов технологий и их различий (Java Enterprise Edition, Spring), серверов приложений (Tomcat, JBoss/Wildfly, Weblogic, WebSphere)
  • Технологии обработки XML (DTD, XSD, XSLT, SAX, StAX, DOM, JAXB)
  • Технологии связывания компонентов и размещения (CDI), Spring Integration
  • Технологию JDBC
  • Технологии объектно-реляционных отображений (Hibernate, Java Persistence Architecture, HQL vs JPQL, Criteria API), источники данных, многоуровневое кеширование
  • Основы управления распределенными транзакциями (JTA)
  • Сервисные архитектуры (REST, SOAP, Enterprise Service Bus)
  • Технологии асинхронной обработки (messaging, JMS)
  • Закрепить использование принципов дизайна GRASP (Information Expert, Creator, Controller, Low coupling, High Cohesion, Pure Fabrication, Protected Variation, Indirection, Private Variation)
  • Освоить/закрепить технологии интеграции и сборки
    • Git как системы контроля версий
    • SonarQube для контроля качества кода
    • Gradle как система сборки
    • Spring Test, JUnit и Mock как систем тестирования

 

Организационная информация

 

Длительность — 24 часа лекций (8 лекций по 3 часа), 24 часов семинаров (8 семинаров по 3 часа)

Ориентировочный объем времени для самостоятельной подготовки дома — 48 часов.

В процессе практического обучения слушатели решают задачи под руководством семинариста.

 

Программа курса (лекции)

 

1. Введение. Обзор современных Java технологий, модульные системы, OSGI, область Java Enterprise. Стек технологий классического Java EE. Spring.io : Spring framework, Spring Boot. Эволюция систем сборки. Ant, Maven, Gradle
2. Основы Spring Framework. Основные принципы дизайна, принцип инверсии зависимостей, концепция инверсии управления, философия Spring, контексты, жизненный цикл бина, основные аннотации, аспекты
3. Работа с XML. Семейство технологий, DTD, Java API for XML (SAX, DOM, StAX, JAXB). Схемы документов (XSD), XPath, XSLT
4. Технологии JDBC. Типы драйверов, соединения, источники данных, исполнение запросов и обработка результатов. Пакетная обработка. Управление транзакциями. Распределенные транзакции. CAP теорема.
5. Технологии объектно-реляционных отображений (ORM). Java Persistence API (JPA). Сущности, реализация иерархических отношений, ленивые связи. Оптимистическая блокировка. Hibernate. Кеширование. Критерии. Именованные запросы. Поддержка вызова процедур в JPA.Spring Data. Управление транзакциями в Spring.
6. Web стек в Java. Servlet API. Контейнеры. Spring MVC. Template engines. Технологии REST. JSON, Jackson. HATEOAS.
7. Шаблоны интеграции Enterprise (Enterprise Integration Patterns). Enterprise Service Bus. Apache Camel. Camel Context, объекты обмена (Exchange), каналы и маршруты (routes)
8. Тестирование. Системное тестирование. Junit, TestNG, Mock технологии. JaCoCo. Проблемы обеспечения качества. Дизайн на основе поведения. Технологии интеграционного тестирования. Тестирование пользовательских интерфейсов. Тестирование производительности. Контроль качества кода (Sonar Qube)
9. Безопасность. Уровни безопасности. Крипто-алгоритмы. SSL. Атаки на TLS/SSL. Java Cryptography Architecture. Аутентификация и авторизация. Обеспечение безопасности в HTTP(s). Управление сессиями. LDAP, Kerberos, OpenID, Oauth. Spring Security
 
Стоимость курса 22000 руб.

Напишите, и мы обязательно Вам ответим!

(383) 363-42-46

it-school@ccfit.nsu.ru

630090, Новосибирская область, г. Новосибирск,
ул. Пирогова, 1, блок 1, к.1112/1


Top