Перейти к содержимому
Теория · Итоговый проект · урок 3 из 4

Что дальше

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

Большие программы на Java устроены похоже. Код в них пишут на том же языке, что и в курсе, а вокруг кода работают инструменты:

  • склад и доставка — системы сборки Maven и Gradle;
  • проверка экземпляров — тесты на JUnit;
  • здание — фреймворк Spring.

Их названия часто встречаются в вакансиях Java-разработчиков. Этот урок объясняет, зачем они нужны, а их синтаксис оставим на потом.

Что вы уже умеете

За курс вы прошли путь от первой строки до работающей программы:

  • javac переводит код в байт-код, а JVM выполняет его на любом компьютере;
  • переменные, операторы, условия, циклы и методы;
  • классы, наследование, интерфейсы, перечисления и записи;
  • обёртки, исключения и коллекции;
  • лямбда-выражения, стримы и первое знакомство с потоками.

Это ядро языка. Каждый инструмент ниже стоит на нём: тот же javac, та же JVM, те же классы и исключения.

Сборка: Maven и Gradle

В настоящем проекте сотни файлов и много чужого готового кода, от которого проект зависит, например для работы с базой данных. Maven и Gradle — системы сборки: они скачивают этот чужой код, вызывают javac для всех файлов и упаковывают программу в один файл .jar.

Тесты: JUnit

JUnit — инструмент для автоматических проверок: вы пишете короткие методы-тесты, каждый вызывает ваш код и сравнивает результат с ожидаемым. JUnit запускает все тесты разом и показывает, какая проверка не прошла.

Сервер: Spring

Spring — самый распространённый фреймворк для серверных программ на Java: веб-сервисов, которые принимают запросы по сети и работают с базами данных. Фреймворк — это готовый каркас приложения: он сам принимает запросы и вызывает ваши классы, а вы пишете только то, что отличает ваш сервис.

Здесь картинка с библиотекой неточна. Здание строят один раз, а программа растёт и меняется годами. Поэтому проект пересобирают после каждой правки, и JUnit каждый раз заново прогоняет все тесты.

Следующий шаг: симулятор собеседований

Лучший способ проверить, что знания держатся, — собеседование. На IT Abyss есть симулятор собеседований по Java. В нём два режима:

  • тесты с вариантами ответа, как в этом курсе;
  • собеседование с ИИ: вы отвечаете своими словами, а ИИ оценивает ответ и задаёт уточняющие вопросы.

Вопросы из тестов курса тоже лежат в банке симулятора. Всего в банке около трёхсот вопросов по Java, в том числе о том, чего курс не касался: сборке мусора в JVM, продвинутой многопоточности, Spring и тестах. Симулятор откроется кнопкой на странице завершения курса.

Главное

  • Курс дал ядро Java: от javac и JVM до коллекций, исключений и стримов.
  • Maven и Gradle скачивают чужой код, от которого зависит проект, собирают проект и упаковывают программу в .jar.
  • JUnit автоматически проверяет код тестами, а Spring даёт готовый каркас для серверных приложений.
  • Следующий шаг — симулятор собеседований по Java на IT Abyss: тесты и собеседование с ИИ.