Курс : Java-разработчик

568 студентов зачислены

Трудоустроим в процессе обучения

или вернем деньги

Получение специализации:

Android или WebDev

Доступ к курсу

навсегда

Java — отличный выбор в качестве первого языка программирования.

Код на java легко читается, каждая новая версия добавляет “синтаксический сахар”, который упрощает разработку и делает язык удобнее для решения прикладных задач.
Также появляется много JVM языков: scala, groovy, kotlin, clojure. Они полностью совместимы с java и runtime работают на одних механизмах. Поэтому, понимание работы java даёт разработчику понимание работы ещё нескольких языков программирования.

Чему вы научитесь

Писать код на Java

Изучите синтаксис языка, познакомитесь с переменными и операторами, научитесь писать и структурировать свой код и разбираться в чужом

Создавать веб-приложения

Поймёте, как превратить строки кода на Java в работающую программу, и научитесь разрабатывать веб-приложения с помощью фреймворка Spring

Работать с MySQL

Узнаете, как сохранять и изменять информацию в базе данных MySQL. Научитесь писать запросы и управлять большими объёмами данных

Пользоваться Git

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

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

Ступень 1: "Базовые навыки Java-разработчика"

Знакомство с языком Java и инструментами
Переменные и типы данных в Java
Циклы и языковые конструкции в Java
Работа с массивами

Классы и объекты: начальный уровень
Классы и объекты: продвинутый уровень
Обработка исключений
Строки и регулярные выражения
Первая программа на Java
Бонусный урок. Дополнительная практика.

Знакомство с алгоритмами
Введение в коллекции: списки, стеки и очереди
Коллекции: map, set
Stream api, lambda, optional
Домашнее задание по коллекциям Java
Generic-типы. Runtime, wildcards & PECS
Работа с памятью JVM

Знакомство с Linux
Продолжение знакомства с Linux

Работа с файлами. Адаптер и декоратор
Домашнее задание: консольная утилита для поиска по файлу
Сериализация. Взаимодействие сервисов, бинарная сериализация, xml, json, yaml
Работа с сетью. UPD, TCP/HTTP, OSI
Домашнее задание: работа с сетью и API

Java библиотека NIO. Отличия IO и NIO
Многопоточное программирование в Java. Синхронизация, классы concurrent.
Рефлексия в Java. Создание аннотаций

Системы контроля версий. Версионирование кода, совместная разработка, CSV Git & GitHub. Git, Commit, Ветки, слияние веток и разрешение конфликтов, GitHub, Командная работа, код ревью
Системы автоматической сборки Java-проектов
Inversion of control / Dependency Injection
Что такое Spring framework и зачем он нужен?
Spring Application Context – от XML до Groovy
Spring Web. REST-архитектура и контроллеры
Сервера, Tomcat
MVC & Spring Boot. Архитектура Веб Сервиса, MVC, Spting Boot
Основы HTML. Язык разметки страницы
CRUD приложение. Create, Read, Update, Delete application

Введение в блок SQL
Извлечение и фильтрация данных: введение
Извлечение и фильтрация данных: advanced
Преобразование и сортировка данных: введение
Преобразование и сортировка данных: advanced
Базы данных, подключение, запуск instance / JDBC
Развиваем проект и добавляем в БД (делаем todo)

Группировка данных
Введение в базы данных
Объединение таблиц
Подзапросы
Обновление, добавление и удаление данных
Создание, изменение и удаление таблиц
Advanced
Воркшоп. Реальный Postgres
Реляционные базы данных
Транзакции и уровни изоляции. Индексы

Spring JDBC. Работа с базой данных и построение запросов
Spring JDBC (часть 2). Нестандартные запросы и транзакции
Hibernate. ORM – нет времени писать запросы
Spring Data Тот же Hibernate.. только лучше!

Ступень 2: "Углубление в смежные сферы разработки"

Зачем Devops Java-разработчику: вводный урок
Введение в DevOps
Linux: введение и основные концепты ОС
Bash. Базовый инструмент скриптов в Linux
Жизненный цикл ПО, CI/CD
Работа с Docker. Контейнеризация. Знакомство с Docker.
Упаковка приложений в Docker
Воркшоп: перенос программы в Docker
Docker-Compose. Сервисы и взаимодействия
Управление конфигурациями. Ansible: Основные концепции и команды
Ansible. Роли и переменные
Ansible. Разработка ролей

Вводный урок
Введение в тестирование ПО
Методы и виды тестирования
Инструменты тестировщика
Документы тестировщика
Артефакты тестирования
Жизненный цикл разработки ПО
Тестирование исходяших взаимодействий (outcoming). Мокинг: что это и зачем
Среда тестирования Mockito
Основы юнит-тестирования
Инструменты юнит-тестирования для Java: JUnit, TestNG
Основы интеграционного тестирования
Инструменты интеграционного тестирования для Java: REST Assured, JMeter
Основы “поведенческого тестирования”
Инструменты “поведенческого” тестирования для Java: Cucumber-JVM, Cukes, JBehave

Ступень 3: "Получение специализации"

Что дает специализация Front-end и кто такой fullstack разработчик?

Структура веб страницы, базовый HTML
Базовый CSS, селекторы и каскад
Продвинутый CSS, адаптивность и кроссбраузерность
Основы языка, инструменты для разработки и отладки
Объекты, массивы, функции
DOM-модель и работа со страницей
Обработка событий
Взаимодействие с сервером

Git и GitHub: Настраиваем репозиторий для проекта
Формы HTML: построение, валидация, доступность
Flex или Grid? Основы создания макетов
Адаптивная и кроссбраузерная верстка
Основы тестирования верстки + DevTools
Улучшаем пользовательский опыт (UX) с помощью CSS-анимаций
Идеальная верстка: делаем Pixel Perfect по макету в Figma

Введение. Переменные и работа с числами. Константы
Строки, boolean и условные операторы. Преобразование типов и нестрогие сравнения
Массивы и циклы. Объекты
Функции / области видимости и замыкания
Обработка событий и пользовательский ввод
Подключение библиотек
Регулярные выражения. Форматирование. Работа с датами
Mикро и макротаски. Цикл событий
Анимации и CSS фреймворки
Структуры данных и алгоритмы

Что дает специализация Android для Java-разработчика: пути развития

Android Studio, SDK, эмулятор и первое приложение
Основные компоненты Android-приложения
Жизненный цикл Activity
User Interface 1
User Interface 2 (Responsive UI)
Основы Kotlin
Организация навигации (Перемещение между Activity)
Отображение списков Recyclerview
Fragments, FragmentManager
Работа с файлами, воспроизведение музыки
Работа в фоне
Networking
Persistence
RX
Архитектура современных приложений

Интеграция с Backend: API, типичные формы интеграции (RPC, REST)
Сетевые запросы: Main Thread & Background
Многопоточность: потоки, проблемы общих данных
Загрузка и отображение изображений
Регистрация, аутентификация и авторизация
Свойства хорошего кода. Abstraction, Composition, Coupling, Cohesion
Принципы SOLID
Основы клиент-серверного взаимодействия
Работа с камерой и мультимедиа

Работа над дипломным проектом для портфолио
Рост в тимлида
Подготовка резюме
Подготовка к собеседованиям
Консультации и защита проекта

Будьте первым кто оставит отзыв.

Оставить отзыв можно только с предоставлением сертификата о прохождении курса.

Пожалуйста, войдите чтобы оставить отзыв
Курс : Java-разработчик
Цена:
160 000 ₽ 94 000 ₽