Основы языка Java
Основы Java - устройство JDK/JVM, модель компиляции и базовые принципы платформонезависимого выполнения.
Что требуется знать перед началом изучения языка программирования Java
Java — объектно-ориентированный язык общего назначения с принципом «напиши один раз, запускай в любом месте».
Рекомендации по разработке на Java
Набор советов, правил, принципов и обычаев в разработке на этом языке.
Ввод и вывод в Java
Консольный ввод и вывод: System.out, переменные, арифметика и Scanner — от Hello World до программы с клавиатурой.
IntelliJ IDEA — IDE для разработки на Java
Обзор IntelliJ IDEA — установка, интерфейс, навигация, рефакторинг, отладка, Maven/Gradle, Git и первая программа на Java.
История языка Java
История Java — от проекта Green и Oak до OpenJDK, LTS-релизов и современной платформы (модули, records, виртуальные потоки).
Экосистема Java-приложений
Библиотеки, фреймворки, инструменты сборки, тестирования, развёртывания и мониторинга.
Структура и сборки Java-проектов
Что такое пакет и пакетная структура, как собираются проекты на Java.
Справочник по конфигурациям в Java
Справочник-шпаргалка по конфигурациям в Java — типы, синтаксис, стандартная библиотека, типовые паттерны. Не заменяет пошаговое обучение. Учебный курс — раздел.
Первая программа на Java
Гайд по установке и настройке с написанием первой программы и её запуском.
Простые приложения на Java
Практические примеры — консольные утилиты, композиция классов и первое Swing-приложение.
Отладка Java-кода в IDE
Точки останова, пошаговое выполнение, панели Variables и Call Stack — практика отладки в IntelliJ IDEA.
Синтаксис и пунктуация в Java
Кавычки, точки, запятые, скобки и прочие знаки препинания.
Ключевые слова в Java
Справочник ключевых слов Java — основные, контекстные и зарезервированные слова.
Встроенные функции и методы Java
Набор функций, которые включены в стандартную библиотеку языка.
Типы данных и переменные в Java
Типизация, набор правил определения типа данных значений языка.
Основные конструкции языка Java
Команды ввода и вывода, пакеты, классы, методы и прочие элементы языка.
Операторы и циклы в Java
Сравнительные, логические, арифметические, тернарный, условные и прочие.
Объектно-ориентированное программирование в Java
ООП в Java - базовые принципы моделирования предметной области через классы, объекты и контракты поведения.
Особенности и расширения языка Java
Особые инструменты - анонимные классы, переменное число аргументов, упаковка, final, super.
Стандартные библиотеки и утилиты Java
Неотъемлемые части Java, основные классы и инструменты.
Обработка исключений в Java
Обработка исключений в Java - checked/unchecked-модель, `try-catch-finally` и корректная стратегия восстановления.
Иерархия классов исключений в Java
Предназначение — Базовый класс для всех исключений связанных с рефлексией. Группирует ошибки при работе с мета-данными классов во время выполнения.
Работа с базами данных из Java
Особенности получения данных и записи, связи с БД и ORM.
JVM, память и потоки
Низкоуровнево - основные понятия и реализации, работа с памятью и потоками.
Массивы в Java
В Java массивы — это низкоуровневая конструкция для максимальной производительности. Весь комфорт работы с динамическими данными вынесен в отдельные классы коллекций.
Коллекции в Java
Collections Framework — List, Set, Map, Queue: реализации, сложность операций, выбор структуры.
JavaServer Faces - фреймворк для веб-интерфейсов
Спецификация для создания пользовательских интерфейсов веб-приложений.
Первая программа на JavaServer Faces
Первая программа на JavaServer Faces - базовая настройка JSF-проекта и структура серверного MVC-приложения.
Практикум JSF — список задач
Пошаговое создание веб-приложения "Список задач" на JavaServer Faces 4, CDI и Maven — от pom.xml до AJAX-таблицы и Jetty.
Практикум Swing — XML-валидатор
Пошаговое создание десктопного XML-валидатора по XSD на Swing и Maven — от pom.xml до SwingWorker, JFileChooser и javax.xml.validation.
Практикум Spring Boot — Simple CRM
Пошаговое создание CRM на Spring Boot 3, SQLite, Thymeleaf и REST API — от pom.xml до веб-интерфейса и curl-проверки.
JavaBeans - компонентная модель
JavaBean — это соглашение (convention), закреплённое в спецификации JavaBeans Specification, впервые опубликованной компанией Sun Microsystems в 1997 году.
Первая программа на JavaBean
Первая программа на JavaBean — базовая модель компонента, свойства, геттеры/сеттеры и правила переиспользования.
Spring Framework
Набор фреймворков и инструментов для построения корпоративных приложений.
Первая программа на Spring Framework
Первая программа на Spring Framework — базовая конфигурация проекта, запуск приложения и принципы DI.
Spring Security — практический старт
SecurityFilterChain, публичные и защищённые эндпоинты, HTTP Basic и MockMvc — без устаревшего WebSecurityConfigurerAdapter.
Testcontainers — интеграционные тесты с реальной БД
Testcontainers и PostgreSQL: @DataJpaTest, @DynamicPropertySource и интеграционный тест JPA-репозитория без моков.
JWT и OAuth2 Resource Server в Spring Boot
JWT: POST /auth/login, Bearer-токен, JwtEncoder/JwtDecoder и OAuth2 Resource Server с симметричным ключом для учебного проекта.
Spring Boot — безопасность в продакшене
Чеклист для production: HTTPS, CSRF, CSP, OIDC, PasswordEncoder, секреты, SCA зависимостей, OWASP ZAP и security-ревью в CI.
Ключевые классы и интерфейсы стандартной библиотеки
Ключевые классы и интерфейсы Java — обзор стандартной библиотеки для строк, файлов, коллекций, дат и базовых операций.
JUnit 5 и тестирование Java
Модульные и интеграционные тесты в Java — JUnit 5, Mockito, Spring Boot Test и практический путь построения тестовой пирамиды.
Gradle — практический старт
Сборка Java-проектов на Gradle — Kotlin DSL, зависимости, задачи и сравнение с Maven.
Hibernate и JPA — практический старт
Spring Boot + Spring Data JPA — сущность, репозиторий, H2 и REST без ручного SQL.
Документация и инструменты Java (Microsoft)
В энциклопедии Java разобраны язык, JVM и экосистема (основы, сборки, первая программа, Spring).
Stream API в Java
Функциональная обработка коллекций — потоки, лямбды, Collectors, Optional и практические правила выбора.
Строки в Java
String, текстовые блоки, форматирование, сравнение, StringBuilder и работа с кодировками.
Ввод-вывод и файлы в Java
Потоки байтов и символов, NIO.2 Path/Files, try-with-resources и типичные ошибки при работе с диском.
Асинхронность в Java
ExecutorService, CompletableFuture, virtual threads и выбор модели для I/O и CPU-задач.
Аннотации и рефлексия в Java
Метаданные в коде, встроенные и пользовательские аннотации, API reflect и границы применимости.
Справочник по Java
Каждая программа на Java начинается с определения класса. Класс — это шаблон для создания объектов, содержащий поля (переменные) и методы (функции).
Современные конструкции Java
record, sealed-классы, pattern matching, var и практический выбор между классами и новым синтаксисом.
Вопросы на собеседовании — Core Java
Навигатор по типовым вопросам Java Core (JavaRush Top-50, ITVDN 250+) с краткими формулировками ответов и ссылками на главы энциклопедии.
JVM в проде — jcmd, дамп памяти и JFR
JVM в проде: jcmd, heap dump и JFR — практика при тормозах и OutOfMemoryError без перегруза теорией GC.
Ошибки REST — @Valid и @ControllerAdvice
@Valid, @ControllerAdvice и ProblemDetail — предсказуемые ответы 400/404 для Spring Boot REST API.
Аннотации Spring Boot
Ключевые аннотации Spring Boot по категориям: DI, Web, JPA, Security, тесты и конфигурация с короткими примерами.
Virtual Threads в Java (Java 21+)
Project Loom: как JVM планирует виртуальные потоки поверх platform threads, mount/unmount при I/O и практика API.
JavaFX и GUI
Графический интерфейс в Java — JavaFX, Swing, компоновка, события, FXML и поток UI.
Первая программа на JavaFX
Десктопное окно на JavaFX — контролы, GridPane, DemoApp, события и Application.launch.
Справочник по JavaFX и Swing — элементы UI
Рецепты JavaFX и Swing — как добавить Stage, Button, TextField, таблицы, меню и диалоги.
public static void main — точка входа JVM
Как JVM находит main, чем запуск java MyApp отличается от import класса и когда static-блоки выполняются без main.
Java — итоги
Итоги раздела «Java» — FAQ и краткие ответы по теме.
Java — чек-лист
Чек-лист раздела «Java» — вопросы для самопроверки.
Java — о разделе
Подборка материалов раздела Java — от JDK и синтаксиса до Spring, JPA и экосистемы; внешние конспекты и официальная документация.