Для кого:
Курс для тех, кто хочет стать Java Developer с нуля.
Базовые знания:
Курс для людей без специального образования и опыта работы. Это возможность для каждого получить высокооплачиваемую работу и продолжить развиваться в сфере IT.
Краткое описание:
Java — второй по популярности язык программирования в мире и наиболее используемый язык для Backend’a. Его востребованность на рынке высокая, а новых проектов на Java появляется все больше и больше.
Именно поэтому Java Developer — одни из самых высокооплачиваемых специалистов в сфере ИТ.
Целью курса «Java» от QALight является трудоустройство студента, поэтому мы построили программу так, чтобы вы получили именно те знания, которые помогут вам получить оффер, а также развиваться в дальнейшем.
На курсе «Java» в QALight Вы сможете овладеть специальностью Java-разработчика с нуля до уровня Junior.
Это не просто курс, а комплекс с нескольких модулей:
- JAVA SE
- Введение в программирование на языке Java (вступительный урок)
- Настройка рабочего окружения
- Основы синтаксиса Java
- Объектно-ориентированное программирование (ООП)
- Работа с разными типами данных
- Тестирование
- Знакомство с GIT
- Работа со сроками
- Массивы и коллекции
- Операторы в Java
- Логические условия и ветвление
- Циклические операции
- Обработка ошибок
- Работа с потоками ввода/вывода информации
- Лямбда-выражения
- Stream в Java
- Параллельное выполнение задач, многопоточность
- Аннотации в Java
- Создание и запуск файла проекта
- JAVA EE
- Maven как инструмент сборки проекта
- Дебаг и рефакторинг
- Графический интерфейс в Java
- Система управления баз данных (СУБД)
- Работа с БД в Java
- Основы web-серверных технологий
- HTML, JSP, основы верстки
- Jsoup для работы с web-контентом
- Selenium для работы и тестирования web-контента
- Web-разработка на Java
- FRAMEWORKS IN JAVA
- Hibernate-framework
- Spring-framework
- Создание финального проекта
Создание финального проекта, который поможет вам реализовать полученные навыки в работе и получить реальную практику, которую можно продемонстрировать на собеседовании.
Курс актуален как для людей без специального образования и опыта работы, так и для специалистов-новичков, которым нужно систематизировать свои знания и развить навыки.
Java-разработка в QALight сочетает необходимую теоретическую базу и максимум практики на проектах, которые станут основой Вашего портфолио для демонстрации будущем заказчику.
На курсе Вы:
- Изучите основы программирования, синтаксис Java, объектно-ориентированное программирование;
- Узнаете основы клиент-серверного взаимодействия, верстку на HTML и JSP;
- Освоите работу с базами данных и SQL;
- Изучите фреймворк Spring;
- Создадите финальный проект, который сможет стать конкурентным преимуществом при трудоустройстве.
Команда тренеров QALight готова помочь в достижении цели стать разработчиком, ведь это специалисты-практики в своей области в крупнейших компаниях Украины.
Все студенты QALight получают поддержку карьерных советников, помогающих найти интересные вакансии, успешно пройти собеседование, получить оффер и в дальнейшем развиваться в профессии.
Для студентов создана гибкая система оплаты.
Все это делает QALight лидером предоставления образовательных услуг в сфере IT.
Мы предлагаем Вам не просто курс «Java». QALight готова стать гарантом получения навыков и знаний для желаемой профессии в сфере IT и перспективного будущего.
Программа курса:
МОДУЛЬ I (JAVA SE)
1. Введение в программирование на языке Java (вступительный урок)
- История развития и версии Java
- Практическое применение Java
- Преимущества и недостатки
- Особенности работы разработчиков в разных компаниях Украины (outsource, outstaff, product)
2. Настройка рабочего окружения
- Java Development Kit (JDK)
- Integrated Development Environment (IDE)
- Maven
- Tomcat
- DataBases (PostgreSQL, H2, MongoDB)
3. Основы синтаксиса Java
- Ключевые слова в Java.
- Объекты в Java
- Класс Object
- Поля и методы.
- Идентификаторы
- Интерфейс и абстрактный класс
- Рефлексия в Java
4. Объектно-ориентированное программирование(ООП)
- Разные подходы к программированию (ООП, АОП, функциональное…)
- ООП – основы, принципы
- Инкапсуляция
- Наследование
- Полиморфизм
5. Работа с разными типами данных
- Примитивные типы данных
- Ссылочные типы данных
- Null и static объекты
- Константы
- Явное и неявное преобразование данных
- Конвертация типов данных.
6. Тестирование
- Понятие Quality Assurance
- Зачем разработчикам тестирование?
- Автоматизация тестирования
- Разновидности тестирования
- Test Driven Development (TDD)
7. Знакомство с GIT
- SVN vs GIT
- Понятие “репозиторий”
- Что такое “commit”
- Популярные команды при работе с GIT
- Ветвление и параллельная разработка
- Слияние веток в т.ч. с помощью MergeRequest
- Решение конфликтов
8. Работа со строками
- Состав строки
- String, StringBuffer, StringBuilder
- Регулярные выражения
- Формат строк
- Использование утилит для работы со строками, в т.ч. внешних библиотек
9. Массивы и коллекции
- Понятие списка объектов
- Массивы
- Коллекции – интерфейс Collection
- Отличия реализаций коллекций(List, Set, Queue)
- Сортировка коллекций
- Map в Java
10. Операторы в Java
- Арифметические
- Логические
- Побитовые
- Приоритет операторов
11. Логические условия и ветвление
- if
- if-else
- if-else-if
- switch
- Тернарный оператор
12. Циклические операции
- Понятие цикличности
- for
- while
- do-while
- for-each
13. Обработка ошибок
- Error vs Exception
- Checked и Unchecked исключения
- Иерархия ошибок и исключений
- Синтаксис при работе с исключениями
- Создание собственных исключений и их обработка
14. Работа с потоками ввода/вывода информации
- InputStream/OutputStream
- Reader/Writer
- Работа с файловой системой
- Работа с различными типами файлов(XML, JSON)
15. Лямбда выражения
- Функциональный интерфейс
- Синтаксис лямбда выражений
- Терминальные лямбда выражения
- Switch с использованием лямбд в Java 11
16. Stream в Java
- Понятие Stream API
- Способы создания Stream
- Методы Stream(конвейерные, терминальные)
- Фильтрация и сортировка при работе со стримами
17. Параллельное выполнение задач, многопоточность
- Понятие “поток”
- Класс Thread и интерфейс Runable
- Потоки-демоны
- Применение многопоточности
18. Аннотации в Java
- Понятие “аннотация”
- Создание собственных аннотаций
- Применение аннотаций
19. Создание и запуск файла проекта
- Экспорт и импорт проекта
- Возможности конвертации
- Запуск с параметрами
МОДУЛЬ II (JAVA EE)
1. Maven как инструмент сборки проекта
- Maven vs Ant
- Maven репозиторий
- Структура Maven проекта
- Работа с pom.xml
- Преобразование ранее созданного web-приложения в maven-проект
- Настройка сборки проекта
- Запуск различных команд Maven, сборка проекта.
2. Дебаг и рефакторинг
- Понятие рефакторинга
- Дебаг в IDE
- Breakpoint, Breakpoint with condition, Expression
3. Графический интерфейс в Java
- Библиотеки Abstract Window Toolkit (AWT) и Swing
- JavaFX
- Плагины для отрисовки графического интерфейса (WindowBuilder, Scene Builder…)
4. Система управления баз данных(СУБД)
- СУБД – история развития, разновидности, применение, рейтинги…
- Реляционные и noSql базы данных
- СУБД Oracle/PostgreSQL/H2(virtual)
- Data Definition Language (DDL)
- Structured Query Language (SQL)
- CRUD операции
- Dump и Backup баз данных
- Связывание таблиц (Primary Key и Foreign Key)
- Запросы с подзапросами
- Разновидности команды JOIN
- Команды GROUP и ORDER BY
5. Работа с БД в Java
- Connection для разных БД
- Data Access Object (DAO)
- Statement и PreparedStatement, передача аргументов в запрос
- Создание DAO-классов для работы с таблицами БД
6. Основы web-серверных технологий
- Что такое сервер
- Настройка сервера на примере Tomcat
- URI и его составляющие(URL, URN)
- Протокол HTTP
- Параметры запроса
- Метод, заголовок, тело запроса
7. HTML, JSP, основы верстки
- Теги, атрибуты, стили
- Таблицы стилей(CSS)
- Динамические Web страницы
- HTML vs JSP
8. Jsoup для работы с web-контентом
- Клиент-сервис на примере приложения PostMan
- Document Object Model(DOM)
- Jsoup как инструмент для работы с web-контентом
- Создание запросов используя различные методы HTTP
- Обработка данных ответа сервера
9. Selenium для работы и тестирования web-контента
- Понятие web-драйвера
- Настройка и запуск web-драйвера на примере ChromeDriver
- Выполнение команд как эмуляция действий пользователя
- Запуск драйвера в фоновом режиме
- Selenium как инструмент для создания ботов
10. Web-разработка на Java
- MVC модель
- Структура web-приложения
- Что такое Servlet
- Создание простого web-приложения
- Запуск web-приложения с помощью IDE
- Обработка запросов клиента, в т.ч с различными параметрами
- Взаимодействие с сервисами и утилитами в приложении
- HttpFilter для обработки запросов
- Использование внешних библиотек
- Экспорт проекта в war-файл
- Деплой проекта
- Запуск и настройка сервера для обеспечения доступа с внешних ресурсов
МОДУЛЬ III (FRAMEWORKS IN JAVA)
1. Hibernate-framework
- Object-Relational Mapping(ORM) в Java
- Hibernate как “де-факто” стандарт реализации JPA
- Настройка Hibernate с помощью XML-файла
- Настройка Hibernate с помощью properties-файла
- HQL для создания запросов
- Создание Native SQL запросов
2. Spring-framework
- Inversion of Control (IoC)
- Dependency Injection как реализация IoC
- Понятие Bean как компонент контекста Spring
- Конфигурирование Spring с помощью XML-файла
- Конфигурирование Spring с помощью аннотаций
- Профили в Spring
- Разновидности фреймворка Spring
- Spring-boot для создания web-приложений
- Spring-data как альтернатива Hibernate
- Миграции данных
- Swagger API
- Тестирование, используя контекст Spring
- Тестирование с использованием Mock-объектов
- Spring-security
ФИНАЛЬНЫЙ ПРОЕКТ
Читать дальше