Открыто

Разработчик Java Enterprise, модуль 1 [Otus] [Виталий Иванов]

Тема в разделе "Курсы по программированию", создана пользователем eassus, 15 авг 2018.

Цена: 12500р.
Взнос: 252р.

Основной список: 54 участников

Резервный список: 14 участников

  1. eassus

    eassus ОргОрганизатор

    [​IMG]

    Платформа JavaEE является спецификацией, описывающая архитектуру серверной платформы, включая всю необходимую документацию, для решения задач средних и крупных предприятий. Ключевой особенностью данного стека технологий является обеспечение работоспособности и переносимостиприложений на различных платформах, что достигается использованием возможностей языка программирования Java (вспоминая известный девиз WORA: writeonce, runanywhere).

    Данная спецификация отлично подходит для создания веб-ориентированных приложений, предназначенных для использования в локальных и глобальных сетях. При этом область ее применения не ограничивается банковской и финансовой сферами, она также активно используется в областях e-commerce и e-business, при построении инфраструктурных систем, в решениях интеграционных сервис-провайдеров, для создания крупных Интернет-порталов и т.д.

    Исходя из многообразия решаемых спецификацией задач, данный курс нацелен на получение специализированных знаний, связанных с различными областями её применения, а также на приобретение профессиональных навыков разработки программных комплексов масштаба предприятия.

    Программа:
    Контейнеры, уровень данных
    Данный блок дает возможность прокачать навыки развертывания разработческих окружений при работе со стеком технологий JavaEE, позволяет сформировать общее представление об архитектуре современных приложений, а также научит разрабатывать приложения, способные интегрироваться с СУБД и обрабатывать данные, используя широкоиспользуемые форматы данных – XML и JSON.
    Вводное занятие. Знакомство со стеком JavaEE
    Обзор и цель курса. Многоуровневая архитектура приложения: обзор спецификации JavaEE/JakartaEE, web и full-профили. Области применения и вендоры. UML-проектирование.

    JavaEE-окружения
    Контейнеры и сервера приложений. Tomcat vs GlassFish. Конфигурирование и администрирование, мониторинг и профилирование, remote debugging. Embedded-режим работы. Типичная структура артефакта приложения. Дескриптор развертывания. Подготовка dev-окружения.

    Работа с базами данных. JDBC vs JPA
    Реляционная СУБД. SQL, stored procedure, PL/SQL. Архитектура JDBC. Соединение с базой данных. Драйверы СУБД и их менеджер. Запросы Statement, PreparedStatement и CallableStatement. Транзакции и автокоммит. Работа с СУБД в рамках JavaEE-окружения. ConnectionPool. ORM. Обзор спецификации JPA. Паттерн DAO.

    Обработка XML
    Язык XML. JAXP и JAXB. Валидация и XSD. Выражения и функции XPath.

    Парсинг JSON
    Структура JSON. JSONP и JSONB. JSONSchema. JSONPath. Конвертация XML-JSON. Работа с YAML.
    Web-профиль
    Данный блок курса нацелен на изучение особенностей разработки веб-приложений с использованием JavaEE. Он включает в себя изучение фронтенд-технологий и получение навыков работы с HTML, CSS, JavaScript. Также в рамках данного блока детально рассматриваются технологические возможности Java для реализации Интернет-решений. На примере зарекомендовавших фреймворков и библиотек (GWT, Struts, JQuery и т.д.) будут рассмотрены возможности расширения клиентских возможностей разрабатываемых веб-приложений.

    Основы веба. Статичный и динамичный HTML
    World Wide Web. URI, URL, URN. Протокол HTTP/s. Client API. HTML5, JS, CSS3, AJAX. Парсер Jsoup. Проект Nashorn.

    Client Layer
    Обзор существующих JS-фреймворков. Клиентский и серверный рендеринг DOM. Архитектура Single Page Application. Возможности GWT: UIBinder, RPC, i18n и прочее. Bean Validation.

    Servlet API
    Схема взаимодействия запрос/ответ. Методы доступа HTTP и их назначение. Коды состояний ответов. Сервлет и его жизненный цикл. Сессионность. Параметры запроса. Заголовки запроса/ответа. Cookie. Контекст сервлета. Проблемы многопоточности. Server PUSH. Server Sent Events.

    Взаимодействие сервлетов
    Фильтры и их жизненный цикл. WebEvents и слушатели. Servlet Collaboration. Диспетчеризация запросов. Servlet Thread Model и асинхронность. Обеспечение безопасности.

    Серверные страницы Java
    Назначение JSP. Основные JSP-элементы: scripting, directives, actions, EL. Встроенные объекты. JSP-процессинг и жизненный цикл.

    Пользовательские теги
    Кастомные JSP-теги. Обработчики тегов. Tag Library Descriptor. Вложенность тегов.

    Шаблонизаторы
    JSTL. Шаблонизаторы Freemarker и Mustache.

    Web Frameworks
    Шаблон проектирования MVC. Struts2 vs JSF. Паттерн MVP. GWT Activity/Places.

    Веб-сокеты
    HTTP vs WS. Http Upgrade. Схема ws/wss. Клиент-сервер в технологии вебсокетов. Форматы сообщений. Encoder/Decoder. Области применения.

    Непрерывная интеграция
    Java Build Tools. CI/CD. Jenkins. Контейнеризация средствами Docker.
    SOA
    Сервис-ориентированная архитектура (SOA). Этот блок курса призван познакомить слушателя с возможностями проектирования и создания сервисно-ориентированной архитектуры с использованием протоколов REST и SOAP на платформе Java. Отдельное внимание уделяется вопросу документирования подобных сервисов и как они могут облегчить жизнь при интеграции с внешними командами.

    SOAP-вебсервисы
    Протокол SOAP. JAX-WS. Клиент и обработка исключений. WSDL.

    RESTful-сервисы
    Обзор SOA. REST и принципы построения API. Сравнение с SOAP. JAX-RS и Jersey. Обеспечение безопасности.

    Расширенные возможности JAX-RS
    JAX-RS Client. Асинхронный и реактивный JAX-RS. JavaEE Concurrency. WADL. Библиотека Swagger. Проблемы REST.
    Бизнес-логика
    Данный блок курса посвящен вопросам инкапсуляции бизнес-логики в приложении JavaEE. Слушатель познакомится и получит навыки работы с основными типами Enterprise Java бинов, принимая во внимание области их применения. Также будут рассмотрены вопросы транзакционности исполняемой бизнес-логики, сквозной функциональности и повторного переиспользования.

    Основы EJB
    Архитектура EJB.Сессионные бины: Stateless, Stateful. Singleton. Local, LocalBean vs Remote. Поддержка асинхронности. TimerServiceAPI.

    Персистентность и транзакционность
    Жизненный цикл Entity. PesistenceUnit и PersistenceContext. Persistence.xml. Методы-колбэки сущностей. Работа с транзакциями JTA. ACID. Менеджер транзакций и атрибуты. Ручное и декларативное управление границами транзакций.

    Аспекто-ориентированный подход
    Кросс-функциональность. Основные элементы AOP. JavaEE Interceptors. AspectJ.

    Внедрение зависимостей
    IoC-контейнеры. Паттерн DI. Спецификация CDI. Injection Points. Квалификаторы. Типы контекстов. Методы продюсеры. Альтернативы, перехватчики, декораторы, стереотипы, наблюдатели. AsyncEvents. Сравнение и синергия с EJB.

    JMS
    MOM-сервера. Архитектура JMS. Структура сообщения. Queue и Topic. Синхронный и асинхронный режимы получения сообщений. Message-Driven бины.

    Генерация отчетности
    JasperReport и JasperSoft Studio. JavaMail.

     
  2. Последние события

    1. freezed93

      freezed93 участвует в складчине.

      16 сен 2019 в 17:22
    2. constr

      constr не участвует в складчине.

      1 сен 2019
    3. Divaa

      Divaa участвует в складчине.

      31 авг 2019
    4. PVA88

      PVA88 участвует в складчине.

      11 авг 2019

    Последние важные события

    1. skladchik.com

      eassus организатор складчины.

      15 авг 2018
  3. gr00t

    gr00t БанЗабанен

  4. Celentano

    Celentano МодерМодератор Команда форума

  5. Goldsmith

    Goldsmith ЧКЧлен клуба

  6. 4Andrej

    4Andrej ЧКЧлен клуба

  7. eassus

    eassus ОргОрганизатор

    Народ, как насчет объявления сборов, чтобы успеть в текущий поток? Или будем уже на следующий поток? Это через 5 месяцев по идее.
     
    2 пользователям это понравилось.
  8. doppale

    doppale БанЗабанен

  9. Knayz

    Knayz ЧКЧлен клуба

  10. Prametei

    Prametei ОргОрганизатор

  11. Loriem

    Loriem ОргОрганизатор (П)

  12. T-Sense

    T-Sense ЧКЧлен клуба

  13. ClubNews

    ClubNews СкладчикСкладчик

    Основы Java [Николай Прохоренок]
    Приводится описание большинства нововведений: Date API, Stream API, лямбда-выражения, ссылки на методы, функциональные интерфейсы и др.
     
  14. Томас Шелби

    Томас Шелби ЧКЧлен клуба

  15. Yahoo1

    Yahoo1 ЧКЧлен клуба

Поделиться этой страницей