Курсы программирования JAVA

Продолжительность курса: 2 месяца

Формат: online/offline (в офисе в Алматы)

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

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

В процессе прохождения курса участники получат знания и навыки, необходимые для трудоустройства на позицию разработчика Java в ведущих IT-компаниях.

Требования к участникам курса

  • Умение работать с СУБД (любая из популярных), знание SQL;
  • Желательно иметь представление о XML, HTML, JavaScript.

Содержание курса

Теоретическая часть

- Знакомство с основными инструментами промышленной java разработки, обзор и изучение фреймворков, работа с БД, JDBC, ORM и т.д.

Практическая часть

Последовательная разработка java веб-приложения, выбор оптимальной доменной модели, реализации, паттернов проектирования и дизайна.

Домашние задания

Разработка внутренней структуры проекта – внутренние сервисы, DAO, DTO, проектирование модели данных проекта и другие. Проверка и обсуждение работ.

Подведение итогов

По окончанию курса, совместно с преподавателями проводится подведение итогов, обзор текущих вакансий, проведение тестовых собеседований.

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

01. Начало проекта

  • Знакомство
  • Обзор курса
  • Обзор фреймворков, библиотек, инструментов платформы Java

02. Принцип SOLID

  • Dependency Inversion, Single Responsibility, Open Closed principle
  • IoC, конфигурирование через аннотации
  • Создание абстракций

03. Знакомство с Spring Boot

  • Особенности Spring Boot
  • Автоматическая конфигурация
  • Spring Boot – контейнер сервлетов

04. Сериализация и валидация данных

  • Сериализация и десериализация данных в Java – POJO
  • Форматы обмена данными – JSON, XML
  • Валидация данных – XSD, JSON Schema

05. Работа с БД, JDBC, ORM

  • ORM – основы, виды – Object Oriented и Database Oriented (Hibernate vs MyBatis)
  • Обзор БД: PostgreSQL, HyperSQL
  • Введение в Hibernate, HQL, Entities lifecycle

06. Веб-приложения Spring

  • Архитектура веб-приложения Spring Boot
  • DAO, Entities. Spring Persistence
  • Spring Service

07. Generics, Collections, Time complexity

  • Сложность алгоритмов, оценка алгоритмов, большое О
  • Основные интерфейсы коллекций
  • Реализация и оценка сложности ArrayList, LinkedList, HashMap

08. Основы непрерывной разработки

  • DevOps – определение и предназначение
  • Системы контроля версий, облачные сервисы – Github, Bitbucket, интеграция CI/CD
  • Системы проверки качества кода, SonarQube

09. Многопоточность, основы и шаблоны

  • Многопоточность: основные проблемы
  • Стандартные практики для реализации потокобезопасности классов
  • Встроенные классы JDK для работы с многопоточностью

10. Spring Security, HTTPS, Jasypt

  • Обзор Spring Security
  • Безопасность REST контроллеров, Basic авторизация
  • Jasypt как средство шифрования паролей

11. Тестирование Spring.

  • Обзор методов тестирования Spring приложений
  • Mock объекты, Mockito
  • Применение Asserts

12. Подведение итогов

  • Анализ результатов
  • Обзор вакансий, советы по прохождению собеседования
  • Что делать дальше?

Отзывы о школе KnewIT

Контакты

связаться с нами

Наш менеджер свяжется с Вами в кратчайшее время


    Пожалуйста, докажите, что вы человек, выбрав грузовик.