Обучение

Консультация

Консультируем с 8:30 до 19:00 Выходной: суббота и воскресенье


Сообщение об ошибке

Обучение

Сообщение об ошибке

Технологии разработки enterprise-решений на Java by EPAM

Профессиональный курс (обязателен для трудоустройства)

Практическая работа программиста Java невозможна без использования современных инструментов разработки. Давно прошли те времена, когда мы писали код в блокноте или собирали проект с помощью стандартного компилятора javac. Новое время диктует новые подходы к работе, а также к тем технологиям и инструментам, которые раньше считались передовыми, а сейчас уступают место более совершенным, быстрым и надежным. Например, написание кода в блокноте заменили на полностью интегрированные системы сборки и отладки приложений - такие, как Intellij Idea Integrated Environment, Eclipse и др.

Мы начнем нашу работу (не просто изучение, а именно работу) над адаптацией имеющихся навыков и знаний к новым реальностям с освоения и практической настройки локальных сред разработки, включающих в себя систему сборки проекта Apache Maven, контейнер-сервлетов Tomcat, СУБД и систему контроля версий GIT. Данная конфигурация является стандартной для большинства проектов и позволяет быстро адаптироваться к меняющимся требованиям конфигурации за счет понимания основных принципов взаимодействия серверов и практического опыта, выработанного в процессе обучения.

Важным моментом является не только построение локальных сред, но и использование стандартных компонентов и библиотек промышленного программирования: Hibernate и Spring.

Hibernate — библиотека языка программирования Java, предназначенная для решения задач по интеграции конкретного приложения с базой данных. Причем Hibernate позволяет писать код, используя принципы объектно-ориентированного программирования. Hibernate берет на себя основную сложность по адаптации вашего java-кода к реляционной модели (табличное представление данных) современных СУБД. Благодаря этой библиотеке вы можете концентрироваться на логике приложения, а не особенностях написания запросов под конкретную базу данных, что позволяет создавать более качественные приложения в сжатые сроки.

Spring Framework (или коротко Spring) — универсальный фреймворк с открытым исходным кодом для Java-платформы. Spring обеспечивает решение многих задач, с которыми сталкиваются Java-разработчики и организации, желающие создать информационную систему, основанную на платформе Java. При этом Spring, несмотря на его масштабную интеграцию с платформой Java Enterprise, не связан с ней полностью, что является важной причиной его популярности.

Spring, вероятно, наиболее известен как источник расширений (features), нужных для эффективной разработки сложных бизнес-приложений вне тяжеловесных программных моделей, которые исторически были доминирующими в промышленности. Еще одно его достоинство в том, что он ввел ранее неиспользуемые функциональные возможности в сегодняшние господствующие методы разработки, причем даже вне платформы Java.

Spring предлагает последовательную модель и делает ее применимой к большинству типов приложений, которые уже созданы на основе платформы Java. Считается, что этот фреймворк реализует модель разработки, основанную на лучших стандартах индустрии, и делает ее доступной во многих областях Java.

Описание курса

Формы обучения

Вечерняя

29.09.2020 - Осталось: 84 дня
Вторник, пятница (с 18.30 до 21.20)
1649 BYN
140 уч.ч.
Рассрочка четыре выплаты по 454 BYN / месяц
413 BYN / месяц*
*Акция "Беспроцентная рассрочка"*
Осталось 6 из 16 мест
№ группы: G-JD2-12-20

Для чего этот курс

Цель курса:

  • Научить слушателей пользоваться основными инструментами промышленной разработки программного обеспечения и подготовить их к работе в реальных проектах.

Вы будете знать

  • 3-х уровневую архитектуру разработки. 

  • Принципы использования фреймворка Apache Maven.

  • Принципы использования фреймворка Hibernate.

  • Принципы использования фреймворка Spring.

  • Принципы использования аннотаций в Java-ориентированных фреймворках.

  • Основы работы с сервером приложений Apache Tomcat.

  • Принципы работы с «Системой контроля версий».

Вы будете уметь

  • Разрабатывать 3-х уровневую архитектуру энтерпрайз приложений.

  • Использовать возможности фреймворков Apache Maven, Hibernate и Spring.

  • Использовать Аннотации.

  • Управлять сервером приложений.

  • Работать с «Системой контроля версий».

Условия отбора

Зачисление на курс проводится по результатам собеседования на конкурсной основе

Необходимая подготовка

  • владение компьютером на уровне уверенного пользователя

  • знание SQL, Java Core, Java EE (JSP, Servlets, JDBC), Design Patterns (singleton, dao, front-controller, factory, command)

Программа курса

  1. Основы Apache Maven
    Настройка Apache Maven для Windows. Создание нового проекта. Компилирование и тестирование проекта. Описание Объектной модели проекта (POM). Описание жизненного цикла сборки. Описание профайлов сборки.
  2. Инженерные техники при работе с Apache Maven
    Автоматизация сборки. Модульность проекта. Управление зависимостями. Автоматизация установки проекта. Сборка web-приложения.
  3. Введение в Web, Протокол HTTP
    Введение в Web, Протокол HTTP
  4. Apache Tomcat Сервер
    Архитектура Tomcat. Выполнение скриптов сервера Tomcat. Передача конфигурационных опций времени выполнения скриптам Catalina. Конфигурирование сервера Tomcat. Конфигурация хостов. Конфигурация контекстов. Менеджер веб-приложений Tomcat. Получение доступа к менеджеру веб-приложений. Доступ к менеджеру веб-приложений, используя веб-интерфейс. Tomcat Maven plugin.
  5. Передача данных в HTTP и Java Servlet, Servlet Filters
    Передача данных в HTTP и Java Servlet, Servlet Filters
  6. Java Server Pages (JSP)
    Java Server Pages (JSP)
  7. Использование Standard Tag Library (JSTL)
    Использование Standard Tag Library (JSTL)
  8. Основы GIT
    Основные понятия управления версиями. Получение учетной записи на www.github.com. Установка клиента Git. Создание локального репозитория, связанного с удаленным репозиторием. Внесение своих изменений в репозиторий. Загрузка локальных изменений в удаленный репозиторий. Откат изменений в рабочей копии. Основные и дополнительные команды Git.
  9. Введение в Базы данных и SQL
    Введение в Базы данных и SQL
  10. Нормализация. Группировки. Joins
    Нормализация. Группировки. Joins
  11. Java Database Connectivity (JDBC)
    Java Database Connectivity (JDBC)
  12. DAO патерн. Практика
    DAO патерн. Практика
  13. Введение в Hibernate
    Введение в механизм сохранения данных. Объектно-реляционная модель. Первое приложение с использованием Hibernate.
  14. Работа с объектами в Hibernate
    Архитектура Hibernate. Состояние объектов в жизненном цикле Hibernate. Операции над данными в Hibernate. Сохранение объектов. Загрузка объектов. Обновление объектов. Удаление объектов. Приоритет выполнения flush операций.
  15. Основы отображения объектно-реляционной модели
    Объявление отображения сущности. Объявление отображения полей сущности. Именование таблиц и полей. Понимание идентичности. Понятие компонента и сущности.
  16. Отображение иерархии классов
    Понятие компонента и сущности. Отображение наследников.
  17. Отображение отношений
    Hibernate аннотация @OneToOne. Hibernate аннотация @OneToMany. Hibernate аннотация @ManyToMany. Каскадные операции в отношениях.
  18. HQL/JPQL: объектно-ориентированный язык запросов
    Описание и структура языка HQL/JPQL. Операции языка HQL/JPQL. Именованные запросы.
  19. Запросы Criteria JPA
    Описание структуры Criteria instance. Операции ограничения выборки. Проекции и агрегация в Criteria. Joins. Detached Queries.
  20. Транзакции и параллелизм
    Использование транзакций. Уровни изоляции транзакций. Установка уровня изоляции транзакций. Пессимистические и оптимистические блокировки, версионирование. Распределенные транзакции. Детализация сессии. Настройка Кэша второго уровня.
  21. Введение в Spring
    Описание механизма внедрения зависимостей. Описание Spring модулей. Контейнеры Spring. Жизненный цикл компонента Spring.
  22. Описание связей между бинами
    Объявление бинов. Введение в свойство бинов. Описание SpEL expression language.
  23. Минимизация XML конфигурации в Spring
    Автоматическая связь между бинами. Связь с аннотациями. Автоматическое обнаружение бинов.
  24. Аспектно-ориентированное программирование в Spring
    Введение. Конфигурация аспектов в контексте приложения. Конфигурация аспектов через аннотации.
  25. Интеграция Hibernate и Spring
    Объявление Hibernate entity manager factory. Описание конфигурации.
  26. Управление транзакциями
    Транзакции в Spring. Программные транзакции в Spring. Декларативные транзакции в Spring.
  27. Компонент Spring DATA
    Интерфейс Repository. Интерфейс CrudRepository (базовый функционал CrudRepository, использование условий и выражений в запросах). Интерфейс JpaRepository (использование @Query-annotated запросов). Пэджинация и сортировка запросов. Запросы по образцу.
  28. Компонент Spring MVC
    Введение в MVC. Реализация базового контроллера. Обработка параметров контроллера. Обработка форм.
  29. Spring REST
    Введение. Возможности Spring Rest. Аннотации Spring Rest.
  30. Безопасность Spring
    Введение в модуль безопасности Spring. Безопасность web-запроса. Аутентификация пользователей. Методы безопасности.
  31. Spring Boot
    Введение в Spring Boot. Компоненты Spring Boot. Запуск веб-приложения. Интеграция со Spring-data. Переопределение системных переменных.
  32. Защита проектов
    Защита проектов

Преподаватели курса

Дмитрий Живушко

Ведущий инженер-программист в EPAM (Гродно)

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

На сегодняшний день имею более 10ти лет опыта работы в IT сфере в должности программиста. За эти годы успел сменить не только десятки проектов различной направленности, но и основной язык программирования. С 2015 года активно занимаюсь разработкой высоконагруженных распределенных систем с применением NodeJS технологии. Но это не мешает продолжать использовать накопленный опыт Java разработок (в том числе и на тренингах), а наоборот – расширяет кругозор и позволяет иначе смотреть на отдельные жесткие каноны в Java.

Активную деятельность, связанную с тренингами по профилю Java/web, начал около 4х лет назад. Не считаю себя особенным тренером, но высокий процент положительных отзывов (>80%) по результатам каждого из предыдущих тренингов заставляет продолжать эту деятельность и развивать соответствующие навыки. Отличительной чертой тренингов, проводимых с моим участием, считаю:

  • акцент учебного процесса на практику, а не теорию

  • подачу материала простым понятным языком

  • минимум технических деталей и терминологии на первых этапах обучения

Являюсь сторонником идеи, что начать карьеру программиста и дойти минимум до среднего уровня по служебной лестнице, может практически любой человек с базовыми способностями логического мышления. Но при этом определяющим фактором успешного обучения является наличие интереса к данной деятельности, трудолюбие и терпение.

dmitri.zhyvushko@gmail.com

Иван Хмурчик

Могу назвать себя профессионалом по Java, так как более 7 лет использую этот язык при разработке различных проектов. Кроме того, в сферу моих интересов входят такие программные технологии и фреймворки, как J2EE (JDBC, JNI, EJB, JMS, Servlets), J2SE, Spring, Hibernate, JDO/JPOX, Eclipse (Equinox, EMF, Teneo, RCP, SWT, RAP) и другие. Моей задачей в рамках данных курсов является не просто ознакомить с основными приемами программирования на выбранном языке, но и показать возможность постоянного развития и совершенствования своих навыков, которые определяются не только набором известных алгоритмов, а еще и своеобразным творческим подходом к решению возникающих задач и проблем.

На сегодняшний день работаю на должности Group Lead в instinctools, занимаюсь разработкой проектов на Java, а также занимаюсь развитием Junior-разработчиков в компании. От своих слушателей жду желания учиться, активного вовлечения в процесс обучения, а также вопросов, позволяющих по-новому взглянуть на процессы разработки.

ivan.khmurchik@instinctools.ru

Максим Наумович

Ведущий инженер-программист в EPAM.

История моего попадания в мир IT и джаву в частности длинна и запутана.

Начинал я свою активную профессиональную деятельность в качестве инженера систем связи в Белтелекоме. Добравшись до заместителя начальника междугородного цеха и позанимавшись некоторое время менеджментом администраторов сети и техподержки, решил, что в жизни стоит что-нибудь поменять.

Сходил на курсы, аналогичные тем, которые сейчас читаю и устроился в ЕПАМ.

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


Почему выбирают IT-академию?

Было много практики

На курсах мне всё понравилось, особенно повезло с преподавателем. Дмитрий [Дмитрий Живушко] давал ответ на любой вопрос и часто оставался допоздна, особенно во второй части курса. Было много практики, даже хотелось, чтобы побольше оставалось времени на теорию =)

Всё сложилось очень удачно – прямо как в сказке!

За полгода до курсов начал изучать язык Java самостоятельно, но что нужно для устройства на работу, было непонятно. Решил пройти обучение в IT-Academy, чтобы получить ответы. Английский язык я на тот момент не очень хорошо знал, но понимал, что когда окунусь в эту сферу, хочешь не хочешь – придётся выучить.

Подумала, а почему бы и нет, и записалась на курсы

На курсы записалась после того, как услышала рекламу в автотранспорте, подумала: «А почему бы и нет?» Обучение проходило очень интенсивно, объем знаний просто огромный. Трудности меня поджидали практически во всём, потому что опытом и знаниями я не обладала, ни с чем похожим на своих предыдущих профессиях не сталкивалась. Хочу сказать огромное спасибо за труд преподавателю Дмитрию, который во всём нам помогал. Он очень терпеливый человек! На меня пришлось не мало его терпения =)

На курсах мне всё понравилось, особенно повезло с преподавателем. Дмитрий [Дмитрий Живушко] давал ответ на любой вопрос и часто оставался допоздна, особенно во второй части курса. Было много практики, даже хотелось, чтобы побольше оставалось времени на теорию =)

Пошёл на курсы с целью получить знания по Java и применять их на стажировке или на работе. В принципе, так и получилось – всё, что я узнал на курсе, пригодилось мне на собеседовании и уже на работе, спасибо IT-Academy.


За полгода до курсов начал изучать язык Java самостоятельно, но что нужно для устройства на работу, было непонятно. Решил пройти обучение в IT-Academy, чтобы получить ответы. Английский язык я на тот момент не очень хорошо знал, но понимал, что когда окунусь в эту сферу, хочешь не хочешь – придётся выучить.

Очень рад, что моим преподавателем оказался именно Дима [Дмитрий Живушко], он показал мне, в какую сторону развиваться и что учить в первую очередь, давал советы, объяснял сложные места, оставался допоздна, если было нужно.

После защиты я получил приглашение на собеседование в IT-компанию и успешно прошёл его. Так что всё сложилось очень удачно, мне до сих пор не верится – прямо как в сказке!


На курсы записалась после того, как услышала рекламу в автотранспорте, подумала: «А почему бы и нет?» Обучение проходило очень интенсивно, объем знаний просто огромный. Трудности меня поджидали практически во всём, потому что опытом и знаниями я не обладала, ни с чем похожим на своих предыдущих профессиях не сталкивалась. Хочу сказать огромное спасибо за труд преподавателю Дмитрию, который во всём нам помогал. Он очень терпеливый человек! На меня пришлось не мало его терпения =)

Могу сказать, что курсы IT-Academy – это мой старт в программировании. Всем, кто хочет связать свою жизнь с высокими технологиями, сомневается или просто не уверен в своих силах, хочу пожелать: дерзайте! Будет трудно, но ставьте цель и идите к ней, не опускайте руки. Верьте в себя!


Более 3150 выпускников успешно работают в IT-компаниях в Беларуси и за рубежом

Акции и новости