Курс «Java-разработчик». OTUS

205700 

Диплом или сертификат

Диплом о профессиональной переподготовке

Язык обучения

Русский

Кредит или рассрочка

Есть

Время обучения

15 месяцев

Все, что нужно знать о современной Java разработке

Реальные отзывыВыводим отзывы о компании с отзовиков
Проверенный курсКурс от проверенной компании
Add your review

Ближайший старт

О стоимости

  • Полная стоимость: 205 700 ₽
  • Стоимость в рассрочку: от 20 570 ₽/мес

Для кого курс

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

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

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


1 ступень

Основы языка Java

Тема 1: Обзор курса. Введение в программирование на Java

Тема 2: Основы работы в GIT

Тема 3: Основы языка Java. Часть 1

Тема 4: Разбор практических примеров

Тема 5: Основы языка Java. Часть 2

Тема 6: Разбор практических примеров

Тема 7: Основы языка Java. Часть 3

Тема 8: Практический консольный проект

Тема 9: Консультация по ДЗ

Объектно-ориентированное программирование

Тема 1: ООП. Часть 1. Введение в ООП

Тема 2: ООП. Часть 2

Тема 3: Практика ООП. Работа со строками.

Тема 4: ООП. Часть 3

Стандартная библиотека языка Java

Тема 1: Исключения

Тема 2: Коллекции. Часть 1

Тема 3: Коллекции. Часть 2

Тема 4: Разбор алгоритмов

Тема 5: Java IO. Часть 1

Тема 6: Консультация по ДЗ

Тема 7: Работа с сетью

Тема 8: Основы многопоточности. Часть 1

Тема 9: Консольный сетевой чат. Часть 1

Тема 10: Консольный сетевой чат. Часть 2

Тема 11: Реляционные базы данных, SQL

Тема 12: JDBC

Тема 13: Консультация по ДЗ

Тема 14: Обобщения

Тема 15: Java IO. Часть 2

Тема 16: Основы многопоточности. Часть 2

Тема 17: Основы тестирования и логирования

Тема 18: Основы Web. Пишем простой http клиент и сервер. Часть 1

Тема 19: Основы Web. Пишем простой http клиент и сервер. Часть 2

Проектная работа

Заключительный месяц курса посвящен проектной работе. Свой проект — это то, что интересно писать слушателю и можно создать на основе знаний, полученных на курсе. В процессе написания по проекту можно получить консультации преподавателей.

Тема 1: Консультация по ДЗ и проектной работе

Тема 2: Защита проектной работы

Тема 3: Карьерная консультация

Тема 4: Итоговое занятие

2 ступень

Язык и платформа Java

В этом модуле изучаются фундаментальные основы работы Java Virtual Machine (JVM) и “тонкие” аспекты языка Java. В результате обучения студент сможет достаточно подробно рассказать как выполняется Java программа и что проиходит “под капотом”.

Тема 1: Подготовка к курсу

Тема 2: Дополнение к gradle, история изменения языка

Тема 3: QA и тестирование

Тема 4: Контейнеры и алгоритмы

Тема 5: Инструменты для преобразования контейнеров, unsafe, jmh

Тема 6: Аннотации

Тема 7: Lombok

Тема 8: Сборщик мусора

Тема 9: Java в Docker-е

Тема 10: Байт код, class-loader, инструментация, asm

Тема 11: Функциональное программирование в Java

Проектирование

В этом модуле рассматриваются принципы проектирования SOLID и паттерны проектирования GOF. В ходе выполнения Домашних Работ студент сможет на практике научиться применять паттерны проектирования и их комбинации.

Тема 1: Концепты проектирования ООП

Тема 2: Creational patterns

Тема 3: Behavioral patterns

Тема 4: Structural patterns

Работа с окружением

Этот блок посвящен вопросам взаимодействия java-приложения с внешним миром. Рассматриваются операции с файловой системой, механизмы сериализации/десериализации объектов. Большое внимание уделяется работе с реляционными базами данных. Подробно изучаются jdbc и Hibernate. При этом не забываем про noSQL. В качестве примера работы с noSQL рассматривается реактивное взаимодействие с MongoDb. Особое внимание уделяется разработке Web-серверов. Изучаем TomCat как пример контейнера war-приложений и Jetty – как встроенный web-сервер, учимся применять технологию web-сокетов. В качестве примера Dependency Injection изучаем Spring и Spring Boot.

Тема 1: Сериализация

Тема 2: NIO. Логирование

Тема 3: JDBC

Тема 4: Общие вопросы работы с СУБД, архитектура РСУБД

Тема 5: Hibernate

Тема 6: JPQL

Тема 7: Типы ссылок. Кэширование

Тема 8: No SQ

Тема 9: Web сервер

Spring

Модуль посвящен изучению основ Spring Framework. В этом модуле разберемся в принципах DI, IoC, поймем как это используется в Spring. Изучим как на технологиях Spring-а создать Web-приложение с базой данных.

Тема 1: Dependency injection

Тема 2: Spring Boot. Spring MVC

Тема 3: Asynchronous Web applications

Тема 4: Spring Data Jdbc

Многопоточность

Этот модуль посвящен многопоточности в разных ее проявлениях. Начинаем изучение с разбора Java Memory Model, какова цель ее создания, что решается и как это использовать. Заканчиваем Completable Future. Начинаем разрабатывать многопоточные приложения и переходим к разработке многопроцессорных приложений – приложения, отдельные части которых работают на разных хостах. Чтобы понять как объединить такие приложения, изучаем блокирующие и неблокирующие сокеты (NIO).

Тема 1: Thread

Тема 2: JMM

Тема 3: Executors

Тема 4: Потокобезопасные коллекции

Тема 5: Многопроцессные приложения

Тема 6: Применение RabbitMQ

Тема 7: NIO

Тема 8: Netty

Тема 9: Реактивное программирование. Spring Webflux

Тема 10: Применение Kafka

Проектная работа

Заключительный месяц курса посвящен проектной работе. Свой проект – это то, что интересно писать студенту. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц, однако к защите надо разработать действующий прототип, который пояснит идею проекта. В процессе написания по проекту можно получить консультации преподавателей. Для достижения результата работа над проектом организуется в виде недельных итераций. Проект должен стать примером кода, который можно показывать потенциальным работодателям. Студент может самостоятельно выбрать технологии из числа изученных на курсе и/или использовать что-то дополнительно. Примеры тем: – телеграм-бот – распределенный кэш – web сервер (разберите протокол) – socket сервер на NIO (как netty) – свой ORM – кэш для hibernate

Тема 1: Основы CI/CD

Тема 2: Знакомство с Kubernetes

Тема 3: Защита проектных работ

3 ступень

Введение

В данном модуле будут рассматриваться понятия и функциональности, на которых базируются все проекты Spring: Inversion of Control (Spring Context), аспектное программирование (Spring AOP), Spring Expression Language (SpEL). Слушатели смогут правильно и эффективно конфигурировать Spring-приложения различными средствами и способами, а также будет рассмотрена “чёрная магия” Spring Boot – автоконфигурации.

Тема 1: Введение в Spring Framework

Тема 2: Конфигурирование Spring-приложений

Тема 3: ЛикБез – Основы архитектуры ПО

Тема 4: AOP, Spring AOP

Тема 5: “Чёрная магия” Spring Boot

Тема 6: Продвинутая конфигурация (часть 1) – Scopes, Lifecycle

Тема 7: Продвинутая конфигурация (часть 2) – Conditionals, Events, тестирование

Тема 8: Разбор домашних заданий, QnA

Работа с базами данных

В данном модуле будет рассмотрены проекты Spring для работы как с реляционными базами данных, так и с NoSQL базами данных. Spring JDBC, Spring ORM, Spring Data Repositories и, разумеется, работа с транзакциями. Помимо проектов Spring, участники смогут разбираться в особенностях различных баз данных, а также использовать специальные embedded-базы даных.

Тема 1: DAO на Spring JDBC

Тема 2: Основы ORM, JPA, Hibernate как провайдер JPA

Тема 3: JPQL, Spring ORM, DAO на основе Spring ORM + JPA

Тема 4: Транзакции, Spring Tx

Тема 5: “Белая магия” Spring Data: Spring Data JPA

Тема 6: SQL и NoSQL базы данных

Тема 7: Spring Data для подключения к нереляционным БД

Тема 8: Разбор домашних заданий, QnA

Разработка Web-приложений

В данном модуле будут рассматриваться возможности Spring для разработки Web-приложений: Spring MVC и современный Reactive-ориентированный Spring WebFlux. Разумеется, будут рассмотрены популярные технологии View и разработка современных SPA-приложений. И, конечно, различные “плюшки” Spring Boot, максимально ускоряющие разработку Web-приложений.

Тема 1: Введение в Spring MVC, Spring MVC на Spring Boot

Тема 2: Spring MVC View

Тема 3: Современные приложения на Spring MVC

Тема 4: Reactor. Введение в реактивное программирование

Тема 5: Spring WebFlux

“Около” и “Дзен”

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

Тема 1: Вебинар-собеседование

Тема 2: Spring Security: Архитектура

Тема 3: Spring Security: Механизмы аутентификации

Тема 4: Spring Security: Авторизация

Тема 5: Spring Security: ACL

Тема 6: Spring Batch

Тема 7: Монолиты vs. Microservices Round 1, Messaging, Enterprise Integration Patterns (EIP)

Тема 8: Spring Integration: Messages и Channels

Тема 9: Spring Integration: Endpoints и Flow Components

Тема 10: Монолиты vs. Microservices (Round 2), Spring Boot Actuator – must have в микросервисах

Тема 11: REST-клиенты, SOAP, Spring WebServices и клиенты к ним

Тема 12: Docker, оркестрация

Тема 13: Знакомство с Kubernetes

Тема 14: Облака, Mongo DB Atlas cluster, Spring Cloud

Тема 15: Spring Cloud Config, Spring Cloud Bus, Spring Cloud Service Discovery с Eureka, Ribbon и Feign

Тема 16: Zuul, Hystrix Circuit Breaker, Sleuth, Zipkin, Hystrix Dashboard, Secure Configuration Properties

Тема 17: Обзор дополнительных технологий Spring, быстрая разработка приложений

Тема 18: Применение RabbitMQ

Тема 19: Применение Kafka

Тема 20: Комплексный пример использования WebFlux и Kafka

Проектная работа

Заключительный месяц курса посвящен проектной работе. Свой проект – это то, что интересно писать студенту. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей. Проект должен стать примером кода, который можно показывать потенциальным работодателям. Проект должен быть сделан на основе Spring Boot, включать работу с DB с ипользованием Spring Data репозиториев и/или Spring JDBC. Проект должен иметь UI построенный на современных принципах разработки Web-приложений (AJAX и/или SPA). Приложение должно содержать механизмы аутентификации и авторизации с использованием Spring Security Асинхронные части могут быть реализованы с помощью Spring Integration. Пектные обработки, утилиты поддержки должны быть реализованы с помощью Spring Batch + Spring Shell. Проект должен быть cloud-ready. Примеры тем: – Онлайн-библиотека – Блог с админкой/регистрацией пользователей

Тема 1: Выбор темы и организация проектной работы

Тема 2: Защита проектных работ №1

Тема 3: Защита проектных работ №2

Отзывы о курсах в Отус

Курс «Java-разработчик». OTUS
Курс «Java-разработчик». OTUS
Каталог и рейтинг онлайн-курсов программирования Джава
Logo