Мы используем cookie для стабильной работы сервиса. Подробнее

Java: написание веб-сервисов для начинающих

ФорматОнлайн
Длительность1 модуль - 1 день
Объём31 занятий
О курсе

Подробнее

 Следить за обновлениями буткемпа  Этот курс представляет собой полное погружение в Java-разработку - от базовых концепций до создания полноценного веб-сервиса. Цель курса: Научить вас профессиональной Java-разработке через практический подход, начиная с нуля и заканчивая созданием современного веб-приложения с использованием Spring Boot. 🚀 Работа над курсом продолжается Почему этот курс: - Структурированный подход от простого к сложному - Практика с первых занятий - Реальные проекты и технические задания - Современный стек технологий - Акцент на практическое применение знаний После прохождения курса вы сможете: - Уверенно программировать на Java - Работать с базами данных - Создавать REST API - Разрабатывать веб-сервисы на Spring Boot - Применять паттерны проектирования - Использовать современные инструменты разработки - Работать с системами контроля версий - Внедрять безопасность в приложения Особенности курса: - 30 модулей с постепенным усложнением - Более 30 технических заданий - Больше сотни задач по основам - Работа над реальным проектом - Совместная разработка с преподавателем - Современные практики программирования - Изучение принципов SOLID Структура обучения: - Базовые концепции Java - Работа с коллекциями и структурами данных - ООП и паттерны проектирования - Работа с базами данных - Spring Framework и Spring Boot - REST API и веб-сервисы - Безопасность приложений - Работа с JSON и внешними API Практические проекты включают: - Создание консольных приложений - Разработку информационных систем - Построение API - Реализацию систем аутентификации - Работу с базами данных Курс идеально подходит как для начинающих программистов, так и для тех, кто уже знаком с Java или любым другим языком программирования Комплексный курс по Java, который проведёт вас от установки среды разработки до создания полноценного веб-сервиса с аутентификацией и базой данных. Вы освоите основы программирования, объектно-ориентированный подход, работу с базами данных, Spring Framework и построение REST API.  В программе: практические задания, работа с реальными инструментами разработки и современные практики программирования.
Требования

Что нужно для старта

  • Важные предварительные навыки:
  • - Желательно базовое понимание принципов программирования или не бояться гуглить.
  • - Знакомство с системой контроля версий Git
  • - Умение работать с командной строкой
  • - Будет плюсом, базовое понимание HTTP и принципов работы веб-приложений
  • Примечание: Курс может оказаться сложным для тех, кто никогда не писал код и не знаком с базовыми концепциями программирования. Таким слушателям рекомендую пройти мой буткемп "Fullstack-разработка с нуля".
Результат

Что вы получите

  • Настраивать среду разработки Java и работать с инструментами разработчика
  • Писать и отлаживать базовый Java-код
  • Применять основные типы данных и операторы Java
  • Использовать циклы, условные конструкции и методы
  • Работать со строками и форматированием данных
  • Применять различные структуры данных (массивы, списки, словари)
  • Разрабатывать алгоритмы для решения практических задач
  • Работать с файлами и обрабатывать исключения
  • Применять принципы ООП (наследование, полиморфизм, инкапсуляция)
  • Использовать абстракции и интерфейсы
  • Реализовывать паттерны проектирования (Singleton, Builder, Prototype, Adapter и другие)
  • Применять принципы SOLID
  • Использовать функциональное программирование и Stream API
  • Применять современные инструменты сборки (Maven)
  • Создавать REST API с использованием Spring Boot
  • Разрабатывать многослойную архитектуру приложения
  • Работать с базами данных (SQLite, JPA)
  • Реализовывать безопасность с помощью JWT
  • Документировать API с помощью Swagger
  • Использовать профессиональные инструменты (Postman, IDE)
  • Применять лучшие практики разработки веб-сервисов
Аудитория

Для кого этот курс

  • Основные категории слушателей:
  • - Разработчики на других языках программирования, желающие освоить Java и Spring
  • - Специалисты, планирующие сменить специализацию на Java-разработку
  • - Студенты технических специальностей с базовым пониманием программирования
  • - QA-инженеры, стремящиеся углубить технические знания
  • - Начинающие программисты с опытом написания простого кода
  • Курс особенно актуален для тех, кто:
  • - Хочет структурированно изучить Java с нуля до промышленной разработки
  • - Планирует карьерный переход в Java-разработку
  • - Стремится расширить стек технологий для работы над более сложными проектами
  • - Ищет практический подход к изучению Spring Framework
  • - Нуждается в понимании построения современных веб-сервисов на Java
Содержание

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

31 занятие
ТемаЧто внутри
01Введение

- Приветствие
- Онлайн-встречи

02Знакомство и настройка окружения

- Установка JDK
- Установка и настройка VS Code
- Пресловутый Hello World
- Начало написания и ошибки
- Донастройка VS Code
- Комментарии
- Что такое переменная
- Примитивные типы
- Арифметические операции
- Форматирование строк
- Продвинутое форматировние чисел
- Техническое задание №1
- Совместная работа
- 1:1

03Первые шаги

- Math
- Классы-обертки
- Преобразование типов
- Пользовательские данные
- Задачи [1..3]
- Техническое задание №2
- Совместная работа
- 1:1

04Управление программой: логика

- Операции сравнения
- Компараторы строк
- Логические операции
- Условный оператор
- Задачи [4..8]
- Тернарный оператор
- Обработка ошибок ввода
- Техническое задание №3
- Совместная работа
- Строки
- Техническое задание №4
- Совместная работа
- 1:1

05Управление программой: циклы

- Ускорение работы
- Циклы
- Псевдослучайные числа
- Задачи для тренировки [9..13]
- Продолжение тренировки [14..19]
- 1:1

06Массивы: основа

- Задачи [20..26]
- Массивы: начало. Задачи[27..31]
- Техническое задание №5
- Совместная работа
- 1:1

07Массивы: дополнение

- Массивы: двумерные
- Задачи [32..36]
- Массивы: многомерные
- Техническое задание №6
- Совместная работа
- 1:1

08Коллекции: основа

- Жизнь без массивов
- Задачи [37..42]
- Словарь
- Практика использования словарей. Задача [43]
- Техническое задание №7
- Совместная работа
- 1:1

09Методы

- Зачем нужены методы?
- Виды методов
- Задачи: часть I [44..50]
- Задачи: часть I [51..52]
- Задачи: продолжение [53..58]
- Задачи: продолжение [59]
- 1:1

10Погружение в методы

- Преамбула
- Задачи [60..64]
- Задачи [65..69]
- Задачи [70..74]
- Задачи [80..84]
- Файлы и пакеты
- Техническое задание №8
- Совместная работа
- 1:1

11Файлы и исключения

- Дата и время: основа
- Через файлы к исключениям
- Работа с файлами: основа
- Техническое задание №9
- Совместная работа
- 1:1

12Введение в классы

- Классы: зачем?
- Классы: практическое задание
- Техническое задание №10
- Совместная работа
- 1:1

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

- Постановка задачи
- Наследование
- Абстракция
- Техническое задание №11
- Совместная работа: полиморфизм
- Параметрический полиморфизм
- Про статику
- 1:1

14Погружение в проектирование

- Техническое задание №12
- Совместная работа
- Выделение зависимостей
- Техническое задание №13
- Совместная работа
- Факультатив
- 1:1

15Проектирование по-взрослому

- Техническое задание №14
- Совместная работа
- Техническое задание №15
- Совместная работа
- 1:1

16Основа веб-сервисов

- IntelliJ IDEA
- Сборщик и зависимости
- JSON: база
- Техническое задание №16
- Совместная работа
- 1:1

17SOLID как продолжение ООП

- SOLID: введение
- Single responsibility principle
- Open-closed principle
- Liskov substitution principle
- Interface segregation principle
- Dependency inversion principle
- SOLID: итоги
- 1:1

18IoC

- Основа
- Несколько слов про Reflection API
- Собственные исключения
- Описание с нуля
- 1:1

19Шаблон проектирования как продолжение ООП

- Singleton
- Техническое задание №17
- Совместная работа
- Builder
- Техническое задание №18
- Совместная работа
- Prototype
- 1:1

20Создание веб-сервисов: база

- Создание веб-проекта
- Spring Boot: введение
- Spring Boot: базовое устройство
- Способы конфигурации
- Про аннотации
- Внедрение зависимостей
- Spring Web: основа
- Начало написания сервиса
- 1:1

21Ускоренная обработка данных

- Функциональные интерфейсы
- Stream API: история появления
- Стандартные интерфейсы
- Stream Api
- Обновление сервиса
- 1:1

22RESTful API: Обзор фундаментальных концепций

- Теория ключевых аспектов
- Есть вопросик...

23Стартовая настройка сервиса

- Роль Postman'а в разработке API
- Унификация ответов API
- Проработка деталей ответа API
- Централизованный генератор ответов
- Воспоминания о будущем
- Техническое задание №19
- Совместная работа
- Техническое задание №20
- Совместная работа
- Техническое задание №21
- Совместная работа
- 1:1

24Логика сервиса: основа

- Модели
- Сопоставление данных
- Валидация: база
- Роль регулярных выражений
- Централизованная обработка ошибок
- Взаимодействие с клиентом
- Техническое задание №22
- Совместная работа
- Проблемы примитивных типов
- 1:1

25Интеграция новой функциональности

- Техническое задание №23
- Сепарация
- Основная модель
- Create Dto
- Шаблонизация пароля
- Update Dto
- Endpoint получения всех записей
- Endpoint получения записи по ID
- Endpoint создания
- Endpoint обновления
- Endpoint удаления
- Endpoint's поиска
- 1:1

26Про архитектуру

- Подготовка
- Хранилище
- Логика
- Взаимодействие
- Техническое задание №24
- Совместная работа: реализация инфраструктуры
- 1:1

27Введение в теорию хранения данных

- Зачем нужны базы данных
- Установка и настройка окружения для работы с SQLite
- Основные концепции структуры базы данных
- Отношения в базе данных
- Что такое SQL и система типов
- Создание таблиц
- Ограничения SQL
- Добавление записей
- Самостоятельная работа: наполнение данными
- Выборка данных
- Фильтрация данных
- Оператор обновления данных
- Самостоятельная работа на обновление данных
- Оператор удаления данных
- Самостоятельная работа: создание и наполнение базы данных
- Сложные концепции
- Самостоятельная работа на сложные запросы
- Сложные запросы
- Самостоятельная работа на объединение
- 1:1

28Интеграция базы данных

- Подготовка к интеграции базы данных
- Первое подключение к базе данных
- Создание и наполнение таблицы
- Частичная реализация инфраструктуры для получения данных
- Частичная реализация инфраструктуры для сохранения данных
- Техническое задание №25
- Совместная работа
- Техническое задание №26
- Совместная работа: интеграция
- Совместная работа
- Альтернативная совместная работа

29Разговор за ORM

- Мотивация к использованию ORM
- Внедрение сущностей
- Базовая реализация JPA
- Реализация репозитория
- Подготовка к отношениям
- Переезд на JPA
- Техническое задание №27
- Реализация репозитория
- Логирование: база
- Роль SQL в инициализации данных
- 1:1

30Интеграция новой сущности и отношений

- Подготовка к новой структуре
- Подготовка к интеграции
- Тестовые данные
- Обновление логики добавления
- Техническое задание №28
- Совместная работа
- Связи
- Обновление маппинга
- Обновление и перенастройка
- Новая логика обновления
- Техническое задание №29
- Совместная работа
- Интеграция Swagger UI
- 1:1

31Бонусный модуль: Интеграция Spring Security

- Почему этот модуль не похож на другие
- Теоретические основы и конфигурация аутентификации
- Интеграция пользователей
- Сервис управления токенами
- Интеграция ключа подписи
- Реализация пользовательской аутентификации
- Создание фильтра безопасности
- Конфигурация безопасности
- DTO для аутентификации и авторизации
- Сервиса аутентификации и регистрации пользователей
- Контроллера аутентификации
- Демо
- Новые сценарии тестирования
- Лучшие практики проектирования REST API: руководство
- Демонстрация как нужно
- Техническое задание №30
- Бонус оффер

01Введение

- Приветствие
- Онлайн-встречи

02Знакомство и настройка окружения

- Установка JDK
- Установка и настройка VS Code
- Пресловутый Hello World
- Начало написания и ошибки
- Донастройка VS Code
- Комментарии
- Что такое переменная
- Примитивные типы
- Арифметические операции
- Форматирование строк
- Продвинутое форматировние чисел
- Техническое задание №1
- Совместная работа
- 1:1

03Первые шаги

- Math
- Классы-обертки
- Преобразование типов
- Пользовательские данные
- Задачи [1..3]
- Техническое задание №2
- Совместная работа
- 1:1

04Управление программой: логика

- Операции сравнения
- Компараторы строк
- Логические операции
- Условный оператор
- Задачи [4..8]
- Тернарный оператор
- Обработка ошибок ввода
- Техническое задание №3
- Совместная работа
- Строки
- Техническое задание №4
- Совместная работа
- 1:1

05Управление программой: циклы

- Ускорение работы
- Циклы
- Псевдослучайные числа
- Задачи для тренировки [9..13]
- Продолжение тренировки [14..19]
- 1:1

06Массивы: основа

- Задачи [20..26]
- Массивы: начало. Задачи[27..31]
- Техническое задание №5
- Совместная работа
- 1:1

07Массивы: дополнение

- Массивы: двумерные
- Задачи [32..36]
- Массивы: многомерные
- Техническое задание №6
- Совместная работа
- 1:1

08Коллекции: основа

- Жизнь без массивов
- Задачи [37..42]
- Словарь
- Практика использования словарей. Задача [43]
- Техническое задание №7
- Совместная работа
- 1:1

09Методы

- Зачем нужены методы?
- Виды методов
- Задачи: часть I [44..50]
- Задачи: часть I [51..52]
- Задачи: продолжение [53..58]
- Задачи: продолжение [59]
- 1:1

10Погружение в методы

- Преамбула
- Задачи [60..64]
- Задачи [65..69]
- Задачи [70..74]
- Задачи [80..84]
- Файлы и пакеты
- Техническое задание №8
- Совместная работа
- 1:1

11Файлы и исключения

- Дата и время: основа
- Через файлы к исключениям
- Работа с файлами: основа
- Техническое задание №9
- Совместная работа
- 1:1

12Введение в классы

- Классы: зачем?
- Классы: практическое задание
- Техническое задание №10
- Совместная работа
- 1:1

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

- Постановка задачи
- Наследование
- Абстракция
- Техническое задание №11
- Совместная работа: полиморфизм
- Параметрический полиморфизм
- Про статику
- 1:1

14Погружение в проектирование

- Техническое задание №12
- Совместная работа
- Выделение зависимостей
- Техническое задание №13
- Совместная работа
- Факультатив
- 1:1

15Проектирование по-взрослому

- Техническое задание №14
- Совместная работа
- Техническое задание №15
- Совместная работа
- 1:1

16Основа веб-сервисов

- IntelliJ IDEA
- Сборщик и зависимости
- JSON: база
- Техническое задание №16
- Совместная работа
- 1:1

17SOLID как продолжение ООП

- SOLID: введение
- Single responsibility principle
- Open-closed principle
- Liskov substitution principle
- Interface segregation principle
- Dependency inversion principle
- SOLID: итоги
- 1:1

18IoC

- Основа
- Несколько слов про Reflection API
- Собственные исключения
- Описание с нуля
- 1:1

19Шаблон проектирования как продолжение ООП

- Singleton
- Техническое задание №17
- Совместная работа
- Builder
- Техническое задание №18
- Совместная работа
- Prototype
- 1:1

20Создание веб-сервисов: база

- Создание веб-проекта
- Spring Boot: введение
- Spring Boot: базовое устройство
- Способы конфигурации
- Про аннотации
- Внедрение зависимостей
- Spring Web: основа
- Начало написания сервиса
- 1:1

21Ускоренная обработка данных

- Функциональные интерфейсы
- Stream API: история появления
- Стандартные интерфейсы
- Stream Api
- Обновление сервиса
- 1:1

22RESTful API: Обзор фундаментальных концепций

- Теория ключевых аспектов
- Есть вопросик...

23Стартовая настройка сервиса

- Роль Postman'а в разработке API
- Унификация ответов API
- Проработка деталей ответа API
- Централизованный генератор ответов
- Воспоминания о будущем
- Техническое задание №19
- Совместная работа
- Техническое задание №20
- Совместная работа
- Техническое задание №21
- Совместная работа
- 1:1

24Логика сервиса: основа

- Модели
- Сопоставление данных
- Валидация: база
- Роль регулярных выражений
- Централизованная обработка ошибок
- Взаимодействие с клиентом
- Техническое задание №22
- Совместная работа
- Проблемы примитивных типов
- 1:1

25Интеграция новой функциональности

- Техническое задание №23
- Сепарация
- Основная модель
- Create Dto
- Шаблонизация пароля
- Update Dto
- Endpoint получения всех записей
- Endpoint получения записи по ID
- Endpoint создания
- Endpoint обновления
- Endpoint удаления
- Endpoint's поиска
- 1:1

26Про архитектуру

- Подготовка
- Хранилище
- Логика
- Взаимодействие
- Техническое задание №24
- Совместная работа: реализация инфраструктуры
- 1:1

27Введение в теорию хранения данных

- Зачем нужны базы данных
- Установка и настройка окружения для работы с SQLite
- Основные концепции структуры базы данных
- Отношения в базе данных
- Что такое SQL и система типов
- Создание таблиц
- Ограничения SQL
- Добавление записей
- Самостоятельная работа: наполнение данными
- Выборка данных
- Фильтрация данных
- Оператор обновления данных
- Самостоятельная работа на обновление данных
- Оператор удаления данных
- Самостоятельная работа: создание и наполнение базы данных
- Сложные концепции
- Самостоятельная работа на сложные запросы
- Сложные запросы
- Самостоятельная работа на объединение
- 1:1

28Интеграция базы данных

- Подготовка к интеграции базы данных
- Первое подключение к базе данных
- Создание и наполнение таблицы
- Частичная реализация инфраструктуры для получения данных
- Частичная реализация инфраструктуры для сохранения данных
- Техническое задание №25
- Совместная работа
- Техническое задание №26
- Совместная работа: интеграция
- Совместная работа
- Альтернативная совместная работа

29Разговор за ORM

- Мотивация к использованию ORM
- Внедрение сущностей
- Базовая реализация JPA
- Реализация репозитория
- Подготовка к отношениям
- Переезд на JPA
- Техническое задание №27
- Реализация репозитория
- Логирование: база
- Роль SQL в инициализации данных
- 1:1

30Интеграция новой сущности и отношений

- Подготовка к новой структуре
- Подготовка к интеграции
- Тестовые данные
- Обновление логики добавления
- Техническое задание №28
- Совместная работа
- Связи
- Обновление маппинга
- Обновление и перенастройка
- Новая логика обновления
- Техническое задание №29
- Совместная работа
- Интеграция Swagger UI
- 1:1

31Бонусный модуль: Интеграция Spring Security

- Почему этот модуль не похож на другие
- Теоретические основы и конфигурация аутентификации
- Интеграция пользователей
- Сервис управления токенами
- Интеграция ключа подписи
- Реализация пользовательской аутентификации
- Создание фильтра безопасности
- Конфигурация безопасности
- DTO для аутентификации и авторизации
- Сервиса аутентификации и регистрации пользователей
- Контроллера аутентификации
- Демо
- Новые сценарии тестирования
- Лучшие практики проектирования REST API: руководство
- Демонстрация как нужно
- Техническое задание №30
- Бонус оффер

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.

Напишите ваш коментарий, не менее 30 символов

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

Оставьте заявку

Консультант ответит на вопросы о курсе «Java: написание веб-сервисов для начинающих» и поможет разобраться в деталях обучения.

Комментарий ...

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

Направления:Backend-разработкаJava

Информация обновлена 7 сентября 2026 г.

Продолжить выбор

Похожие курсы

Основы программирования на языке "Java" для школьников. Модуль 2 [c]
20 ак. ч. + 10 ак. ч. самостоятельно
Основы программирования на языке "Java" для школьников. Модуль 2 [c]

Обучение проходит на Java 22\21 Продолжайте обучение программированию на языке Java! Программирование охватывает все области нашей жизни: от экономики до развлечений, от медицины…

Онлайн12 занятий
18 990 ₽
Автоматизиро­ван­ное тестирование на Java
−45%2 месяца
Автоматизиро­ван­ное тестирование на Java

Вы научитесь программировать на Java, работать с фреймворками Maven и JUnit, тестировать пользовательские интерфейсы и настраивать CI. Соберёте мощное портфолио, повысите уровень…

Онлайн
77 025 ₽−45%
42 364 ₽от 3 530 ₽/мес на 12 мес.
Основы Java от Amazon
−50%
Основы Java от Amazon

Научитесь создавать приложения на Java за 2 месяца. Вы изучите основы популярного языка программирования, который используется в большинстве крупных компаний. Потренируетесь испол…

Онлайн
91 080 ₽−50%
45 540 ₽
Взаимодействие с СУБД из Java-приложений посредством технологии JDBC v3
−10%16 академ. часов
Взаимодействие с СУБД из Java-приложений посредством технологии JDBC v3

Изучите JDBC API для создания мощных Java-приложений, взаимодействующих с базами данных. Слушатели научатся применять JDBC API для доступа к реляционным базам данных, выполнения S…

Онлайн5 занятийСредний
Практические занятия
27 900 ₽−10%
25 110 ₽
Начать без затрат

Бесплатные курсы

CloudCoder Exercises
Бесплатно
CloudCoder Exercises

Курс больше не поддерживается The course consists of a few hundred of programming assignments for Python, Java and C++. Problem set based on CloudCoder exercise repository (http…

Онлайн3 занятий
Бесплатно
Java. Базовый курс
Бесплатно2-4 часа в неделю
Java. Базовый курс

Данный курс предназначен для тех, кто только начинает изучать Java. Мы начнем с самых азов: компиляция и запуск Java-программ, синтаксис языка, система типов, основы объектно-орие…

Онлайн6 занятий
Бесплатно
Adaptive Java
Бесплатно
Adaptive Java

Please note: adaptive courses are no longer supported on Stepik The course consists of few hundreds of programming assignments for Java, ranging from basics up to complex topics.…

Онлайн3 занятий
Бесплатно