1. 1. Профессиональный код на ООП в Java
1.1. Зачем
1.1.1. Без этих базовых знаний вы не сможете профессионально и правильно создавать любой код на Java
1.2. Что создадите
1.2.1. Узнаете самый фундамент для любого разработчика: как правильно мыслить и создавать проф. код, использовать ООП, планировать, создавать и связывать объекты и пр.
1.3. Что нужно знать
1.3.1. Начальные знания не требуются (разве что навыки работы с компьютером, запуск программ)
1.4. Ссылка на курс
1.4.1. https://javabegin.ru/products/oop-new/
2. 2. Основы языка Kotlin + задачи/коллекции (по желанию)
2.1. Зачем
2.1.1. Это необязательно, но если хотите сразу перейти на Kotlin и быстрее создавать проекты - можно его доучить - но только после Java
2.2. Что создадите
2.2.1. Научитесь использовать современный язык и быстрее разрабатывать приложения (по сравнению с Java)
2.3. Что нужно знать
2.3.1. Хорошо нужно знать язык Java со всеми принципами ООП - чтобы вы просто перенесли их на язык Kotlin
2.4. Ссылка на курс
2.4.1. https://javabegin.ru/products/kotlin-osnovy/
3. 3. Базы данных и SQL – на основе БД PostgreSQL
3.1. Зачем
3.1.1. Любое приложение использует БД, поэтому вы должны уметь хорошо работать с таблицами, данными, связями
3.2. Что создадите
3.2.1. С нуля создадите таблицы в PostgreSQL и изучите основные темы (связи, скрипты, тестовые данные, ключи, ограничения, SQL и т.д.)
3.3. Что нужно знать
3.3.1. Начальные знания не требуются
3.4. Ссылка на курс
3.4.1. https://javabegin.ru/products/bd-new/
4. 4. Основы Hibernate для новичков и профи
4.1. Зачем
4.1.1. Для выполнения запросов в БД не на SQL, а с помощью ORM объектов (как это делается в крупных приложениях)
4.2. Что создадите
4.2.1. Научитесь с нуля добавлять в проект Hibernate, выполнять запросы в БД, настраивать классы и аннотации
4.3. Что нужно знать
4.3.1. Опыт разработки проектов на Java или Kotlin, работа с любой БД - чтобы начать применять ORM Hibernate и не отвлекаться на остальное
4.4. Ссылка на курс
4.4.1. https://javabegin.ru/products/hibernate-new/
5. 5. Spring backend с RESTful сервисами + Java/Kotlin
5.1. Зачем
5.1.1. Для выполнения запросов в БД не на чистом SQL, а с помощью ORM объектов (как это делается в крупных приложениях)
5.2. Что создадите
5.2.1. Научитесь создавать с нуля проект с RESTful сервисами на SpringBoot - тестировать все веб запросы, обращаться в БД из проекта с помощью Hibernate
5.3. Что нужно знать
5.3.1. Вы должны уметь создавать простые проекты на Java/Kotlin, работать с БД/Hibernate - все это будет использоваться в Spring
5.4. Ссылка на курс
5.4.1. https://javabegin.ru/products/spring-backend-2021/
6. 6. Микросервисы на Spring + Java/Kotlin
6.1. Зачем
6.1.1. Вы должны уметь создавать современный тип приложений на основе микросервисов
6.2. Что создадите
6.2.1. На основе готовых сервисов - научитесь создавать распределенный по сети проект (не монолит) - с помощью микросервисов в Spring
6.3. Что нужно знать
6.3.1. Работа в Spring с RESTful сервисами на Java/Kotlin, настройки SpringBoot проектов
6.4. Ссылка на курс
6.4.1. https://javabegin.ru/products/spring-micro/
7. 7. Авторизация на Spring, OAuth2, OpenID
7.1. Зачем
7.1.1. Обеспечение безопасности для приложения (ограничение RESTful запросов по ролям пользователей)
7.2. Что создадите
7.2.1. Работа с пользователями: авторизация/аутентификация с Spring проекта
7.3. Что нужно знать
7.3.1. Работа с RESTful микросервисами в SpringBoot
7.4. Ссылка на курс
7.4.1. https://javabegin.ru/products/spring-oauth2/
8. 8. Frontend “Планировщик" на React + TypeScript
8.1. Зачем
8.1.1. Реализация динамичного внешнего вида веб приложения
8.2. Что создадите
8.2.1. На выбор: функционал веб приложения на библиотеке React, который будет вызывать микросервисы Spring c авторизацией и защитой
8.3. Что нужно знать
8.3.1. Создание backend с микросервисами с авторизацией OAuth2
8.4. Ссылка на курс
8.4.1. https://javabegin.ru/products/react-todo/
9. 9. Frontend “Планировщик” на Angular + TypeScript
9.1. Зачем
9.1.1. Реализация динамичного внешнего вида веб приложения
9.2. Что создадите
9.2.1. На выбор: функционал веб приложения на фреймворке Angular, который будет вызывать микросервисы Spring c авторизацией и защитой
9.3. Что нужно знать
9.3.1. Создание backend с микросервисами с авторизацией OAuth2
9.4. Ссылка на курс
9.4.1. https://javabegin.ru/products/angular-springboot-auth/
10. 10. Git для новичков + практика на Java проекте
10.1. Зачем
10.1.1. Знания, которые нужны любому профессионалу, чтобы не потерять свой код
10.2. Что создадите
10.2.1. По желанию: научитесь правильно работать с версиями проектов, откатываться, создавать ветки, переключаться между ними и пр.
10.3. Что нужно знать
10.3.1. Создание любых базовых проектов Java/Kotlin
10.4. Ссылка на курс
10.4.1. https://javabegin.ru/products/git/
11. 11. Контейнеры и дистрибуция приложений
11.1. Зачем
11.1.1. Если у вас готово приложение - нужно правильно его упаковать и доставить пользователю
11.2. Что создадите
11.2.1. Научитесь современному способу дистрибуции приложений, как это делают в крупных компаниях с помощью контейнеров docker
11.3. Что нужно знать
11.3.1. Создание backend веб проектов на Spring
11.4. Ссылка на курс
11.4.1. https://javabegin.ru/products/docker/
12. 12. DevOps – конвейерная разработка и обновление проекта
12.1. Зачем
12.1.1. Ускорение разработки и обновления приложения с применением GitHub (или любого другого инструмента)
12.2. Что создадите
12.2.1. Научитесь современному способу обновления приложений, чтобы конечный пользователь быстро получал последние версии приложения
12.3. Что нужно знать
12.3.1. Работа в Spring с RESTful сервисами на Java/Kotlin, настройки SpringBoot проектов
12.4. Ссылка на курс
12.4.1. https://javabegin.ru/products/devops/