Что дальше
Стойка выдачи собрана, и каждую её деталь вы сделали сами. Но стойка — только часть настоящей библиотеки. Книги на полки привозят со склада, новые экземпляры проверяют, прежде чем выдать, а всё это работает в одном здании.
Большие программы на 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: тесты и собеседование с ИИ.