Современных технологий по созданию веб-приложений очень много. Обзор этих технологий собран в одном месте — в этом курсе. Он будет полезен разработчикам, администраторам, архитекторам проектов. В курсе рассказывается о современных распределенных вычислениях, REST и микросервисах, на готовых примерах строится распределенная сеть приложений на разных платформах и с использованием различных языков программирования.
За время проведения курса слушатели познакомятся с серверами Wildfly, NGINX, Node-Express, а именно — конфигурация, настройка производительности, формирование взаимодействия с другими серверами и системами. Построят простой сервер с использованием Python. Таким образом будет построена полная картина современной веб разработки.
На протяжении курса будет создано фронтальное приложение с использованием одной из популярных библиотек — React или Angular (по согласованию со слушателями). А также будет разработан проект для серверной части, на основе технологий Jakarta EE (Старое название — Java EE) для сервера приложений Wildfly.
Аудитория
Курс будет полезен для разработчиков приложений масштаба предприятия, администраторов серверов приложений, руководителей проектов, архитекторов ПО.
- Общая архитектура современных веб приложений.
- Одностраничные приложения (SPA).
- Jakarta EE технология на стороне сервера и библиотеки для создания клиентских приложений.
- JSON для обмена данными между клиентом и сервером.
- Серверная часть — от монолитных приложений к микросервисам и распределенным вычислениям.
- Сервер приложений Wildfly и его конфигурационные файлы.
- Gallеon - от веб-сервера до полного сервера приложений стандарта Jakarta EE.
- Настройка ресурсов доступа к данным баз данных Oracle и Postgresql.
- Конфигурация асинхронных очередей и разделов – JMS.
- Пулы соединений-определение фабрик.
- Конфигурация и настройка
- Пулы бинов масштаба предприятия.
- Асинхронные MDB бины.
- Сервисы взаимодействия с почтовыми серверами.
- Общая архитектура серверного приложения Jakarta EE.
- Модули и компоненты.
- Управление метаданными приложения и компонентами.
- Rest сервисы для обмена данными между фронтальной и серверными частями приложения.
- Разработка проекта с REST ресурсами.
- Доступ к пулам баз данных сервера приложений.
- Механизмы JPA.
- EntityManager.
- Сериализация объектов Java в JSON потоки.
- Готовые решения для тестирования серверных ресурсов.
- Сервер на основе библиотек Python.
- Доступ из Python к базам данных Oracle и Postgresql.
- Особенности работы и конфигурации драйверов.
- Написание тестового клиента на NodeJS.
- Сервер Express — создание серверного приложения для работы с базой данных Oracle и Postgresql.
- Пулы соединений.
- Библиотеки для работы с базами данных.
- NodeJS сервер — клиент для других серверов.
- Технология EJB3.x.
- Цикл жизни сессионных компонент.
- Аннотации, методы для управления циклом жизни.
- Прокси объекты для доступа к бизнес методам.
- Локальные вызовы.
- Диаграмма состояния сессионных бинов.
- Управление сессионным состоянием.
- Компоненты Singletons и компоненты с асинхронными методами.
- Возврат значения из асинхронного метода.
- Инъекции ресурсов сервера приложений в методы сессионных бинов.
- Бизнес транзакции и управление ими со стороны сервера приложений. Состояние транзакционного контекста.
- Использование XA источников данных в бизнес методах.
- Методы управления доступом к компонентам.
- JAAS аутентификация и доступ к бизнес компонентам.
- Распределение ролей для выполнения различных методов.
- Методы и классы Interceptor.
- Аннотация @AroundInvoke.
- Доступ к ресурсам приложения и сервера из защищенных методов.
- TimerService.
- Создание компоненты для выполнения действий по расписанию.
- Публикация данных сервера приложений через REST сервисы.
- Методы доступа к сервисам.
- Создание тестового нагрузочного клиента для REST.
- Взаимодействие с почтовыми серверами.
- Приложение для выполнения сложной распределенной транзакции с доступом к базам данных, JMS и почтовым серверам.
- Окончательное тестирование распределенного приложения.
- Создание клиентского веб приложения на примере библиотек (frameworks) Angular или React.
- Асинхронные веб клиенты.
- Создание путей навигации и связывание их с компонентами.
- Модуль маршрутизации.
- Параметры маршрута, дочерние маршруты.
- Построение меню и определение активных маршрутов.
- Создание компонента приложения, определение места размещения активов (assets), организация подгрузки статического контента на страницу.
- Определение сервисов.
- Взаимодействие из сервисов с серверами приложений, создание сервиса с параметрами и возвращением результата через Обещание (Promise).
- HTTPClient.
- Особенности выполнения методов POST и GET, обработка ошибок, использование AJAX для асинхронного обмена байтовыми потоками с серверами приложений.
- Механизмы Observable и Subscribe, использование Promise. Async — Await.
- Использование результата работы сервисов в компонентах.
- Отображение данных в виде таблиц и деревьев.
- Использование CSS стилизации для данных, полученных из сервисов.
- Одностороннее связывание.
- Обработка событий.
- Двустороннее связывание.
- Связывание через атрибуты.
- Технологии FLUX и REDUX.
- Единое клиентское хранилище
- Hooks-React.