IntelliJ IDEA — среда разработки

IntelliJ IDEA — мощная интегрированная среда разработки от JetBrains, предназначенная для работы с Java и другими языками. Она значительно ускоряет разработку благодаря интеллектуальному анализу кода и встроенным инструментам.

Уровень: начальный 19 разделов ⏱ 3–4 часа

1. Что такое IntelliJ IDEA

IntelliJ IDEA — это коммерческая IDE, разработанная компанией JetBrains. Она создана специально для языка Java и является одной из самых популярных сред разработки в мире. IDEA глубоко анализирует код, понимает его контекст и помогает писать программы быстрее и с меньшим количеством ошибок.

Ultimate vs Community

ВозможностьCommunityUltimate
Java / KotlinДаДа
Android-разработкаДаДа
Spring / Jakarta EEНетДа
Веб-фреймворки (React, Vue)НетДа
Базы данныхНетДа
Диаграммы классовНетДа
СтоимостьБесплатноПлатная (бесплатно для студентов)

Отличия от PyCharm

PyCharm — это дочерний продукт JetBrains, заточенный под Python. IntelliJ IDEA имеет встроенный плагин Python и может работать с Python-проектами, но для чисто Python-разработки PyCharm удобнее за счёт специализированных инструментов: встроенного отладчика Django-шаблонов, подсказок для pip и настройки виртуальных окружений. IntelliJ IDEA же универсален и позволяет работать с Java, Kotlin, Groovy, Scala и многими другими языками одновременно.

2. Установка и настройка

Самый простой способ установить IntelliJ IDEA — через JetBrains Toolbox App. Это менеджер, который автоматически скачивает и обновляет все продукты JetBrains.

  1. Перейди на jetbrains.com и скачай установщик.
  2. Запусти установщик и следуй инструкциям — Toolbox установится за пару минут.
  3. Открой Toolbox, найди IntelliJ IDEA и нажми Install.
  4. Выбери нужную версию (Community или Ultimate) и нажми Download.
Toolbox автоматически устанавливает обновления. Если тебе не нужно автоматическое обновление, скачай IDEA напрямую с сайта JetBrains.

Выбор JDK

При первом запуске IDEA предложит выбрать JDK (Java Development Kit). Это набор инструментов для компиляции и запуска Java-программ.

В IntelliJ IDEA можно скачать JDK прямо из интерфейса: File > Project Structure > SDK > Add SDK > Download JDK. Выбери версию 17 или 21 LTS.

Настройка темы и шрифта

Перейди в File > Settings > Appearance > Appearance, чтобы выбрать тему. IDEA предлагает три варианта:

Для настройки шрифта редактора перейди в Settings > Editor > Font. Рекомендуемый размер — 14–16, шрифт — JetBrains Mono или Cascadia Code.

3. Создание первого Java-проекта

При создании нового проекта IDEA предлагает несколько вариантов:

  1. Нажми New Project на стартовом экране.
  2. Выбери тип проекта — Java.
  3. Укажи Project SDK — JDK, который ты установил ранее.
  4. Опционально добавь фреймворк (Spring, Maven, Gradle) или оставь пустым.
  5. Нажми Create.

Структура проекта

После создания IDEA формирует стандартную структуру каталогов:

Первая программа

Щёлкни правой кнопкой на папку src, выбери New > Java Class и назови класс Main. Напиши следующий код:

public class Main {
    public static void main(String[] args) {
        System.out.println("Привет, мир!");
        int sum = 0;
        for (int i = 1; i <= 10; i++) {
            sum += i;
        }
        System.out.println("Сумма чисел от 1 до 10: " + sum);
    }
}

Нажми зелёный треугольник рядом с методом main или используй комбинацию Shift+F10 для запуска.

4. Интерфейс IntelliJ IDEA

Интерфейс IDEA состоит из нескольких ключевых элементов:

Терминал

Открой встроенный терминал комбинацией Alt+F12. В нём можно выполнять команды Maven, Gradle, Git и любые системные команды без переключения на отдельное окно.

Окно Git

Панель Git (Alt+9) показывает все изменения в проекте. Здесь видны незакоммиченные файлы, история коммитов и текущая ветка. IDEA подсвечивает изменённые строки зелёным (новые), синим (удалённые) и жёлтым (изменённые) прямо в редакторе.

Если Git не настроен в IDEA, перейди в File > Settings > Version Control > Git и укажи путь к исполняемому файлу git.exe.

5. Написание кода: автодополнение и рефакторинг

Главное преимущество IDEA перед текстовым редактором — интеллектуальная помощь при написании кода.

Code Completion

Нажми Ctrl+Space для базового автодополнения. IDEA предлагает имена классов, методов, переменных и ключевых слов. При повторном нажатии Ctrl+Space IDEA покажет расширенный список с учётом контекста.

Intentions (Alt+Enter)

Жёлтая лампочка в левой части редактора indicates доступные действия. Нажми Alt+Enter, чтобы увидеть варианты:

Рефакторинг

IDEA предоставляет мощные инструменты рефакторинга, которые безопасно изменяют код во всём проекте:

ДействиеГорячая клавишаОписание
RenameShift+F6Переименование переменной, метода или класса во всём проекте
Extract VariableCtrl+Alt+VВыделить выражение в отдельную переменную
Extract MethodCtrl+Alt+MВыделить блок кода в отдельный метод
InlineCtrl+Alt+NЗаменить вызов метода/переменную содержимым
Change SignatureCtrl+F6Изменить сигнатуру метода (имена, типы, порядок параметров)

Generate Code

Нажми Alt+Insert (или Alt+Cmd+Insert на macOS), чтобы сгенерировать стандартные конструкции:

public class Student {
    private String name;
    private int age;

    // Alt+Insert > Constructor — генерирует конструктор
    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // Alt+Insert > Getter and Setter
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    // Alt+Insert > toString()
    @Override
    public String toString() {
        return "Student{name='" + name + "', age=" + age + "}";
    }
}

6. Запуск и отладка

Запуск программы

Запусти текущий файл одним из способов:

Результат выполнения программы появится в панели Run внизу экрана.

Отладка (Debug)

Для отладки нажми Shift+F9 или значок жука рядом с кнопкой Run. IDEA запустит программу в режиме отладки.

  1. Breakpoints — установи точку останова, щёлкнув левой кнопкой в области рядом с номером строки (появится красный кружок).
  2. Watches — добавь переменные в окно Watches, чтобы отслеживать их значения в реальном времени.
  3. Evaluate Expression — нажми Alt+F8 во время остановки, чтобы вычислить любое выражение в контексте текущего выполнения.
  4. Step Over / Step Into / Step Out — переходи по коду построчно (F8), заходя внутрь методов (F7) или выходя из них (Shift+F8).
Поставь breakpoint на строку с ошибкой и запусти Debug. Используй Evaluate Expression, чтобы проверить значения переменных перед ошибочной строкой — это самый быстрый способ найти причину бага.

7. Системы сборки в IDEA

IntelliJ IDEA интегрирована с Maven и Gradle — двумя наиболее популярными системами сборки в Java-экосистеме.

Maven

Если ты открываешь проект с файлом pom.xml, IDEA автоматически распознает его как Maven-проект. В правом верхнем углу появится панель Maven с кнопками:

Gradle

Для проектов с файлом build.gradle IDEA предлагает аналогичную интеграцию. При первом открытии нажми Load Gradle Project, и IDEA скачает все зависимости, создаст индексы и настроит подсветку.

IDEA поддерживает как Groovy DSL (build.gradle), так и Kotlin DSL (build.gradle.kts). Выбор формата зависит от предпочтений команды.
Не открывай Maven- или Gradle-проект просто как обычный каталог. Всегда открывай его через File > Open и выбирай файл pom.xml или build.gradle — тогда IDEA правильно настроит индексы и зависимости.

8. Тестирование в IDEA

IntelliJ IDEA поддерживает JUnit 4 и JUnit 5 из коробки. Чтобы создать тест:

  1. Открой класс, для которого нужно написать тест.
  2. Нажми Alt+Insert и выбери Test.
  3. Выбери фреймворк (JUnit 5) и IDEA создаст тестовый класс с заготовками методов.

Пример теста

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;

class CalculatorTest {

    @Test
    void shouldAddTwoNumbers() {
        Calculator calc = new Calculator();
        assertEquals(5, calc.add(2, 3));
    }

    @Test
    void shouldThrowOnDivisionByZero() {
        Calculator calc = new Calculator();
        assertThrows(ArithmeticException.class, () -> calc.divide(10, 0));
    }
}

Запуск тестов

Нажми зелёный треугольник рядом с именем тестового класса или метода. Результаты отображаются в панели Run — зелёная иконка означает успешное прохождение, красная — провал.

Coverage

Для проверки покрытия кода тестами нажми Run with Coverage (значок с зелёным кругом). IDEA покажет, какие строки кода выполняются тестами, а какие нет. Рекомендуемый порог покрытия — не менее 70%.

9. Работа с Git в IDEA

Интеграция с Git — одна из сильнейших сторон IDEA. Все основные операции доступны без переключения на терминал.

Клонирование репозитория

На стартовом экране нажми Get from VCS, вставь URL репозитория и нажми Clone. IDEA скачает проект и автоматически настроит ветку.

Commit и Push

  1. Нажми Ctrl+K — откроется окно коммита.
  2. Отметь галочками файлы, которые нужно закоммитить.
  3. Напиши сообщение коммита и нажми Commit.
  4. Для отправки на удалённый сервер нажми Ctrl+Shift+K и выбери Push.

Работа с ветками

В нижней панели IDEA (справа) отображается текущая ветка. Нажми на неё, чтобы создать новую ветку, переключиться или сравнить с текущей.

Сравнение и разрешение конфликтов

IDEA предоставляет визуальный инструмент сравнения файлов (Compare with...). При возникновении конфликта слияния открой вкладку Git > Conflicts и используй трёхсторонний merger — IDEA покажет твою версию, удалённую версию и результат.

10. Горячие клавиши

Запомни основные комбинации — они значительно ускорят работу.

ДействиеГорячая клавиша
Intentions / Quick FixAlt+Enter
Rename (рефакторинг)Shift+F6
Форматирование кодаCtrl+Alt+L
Комментарий строкиCtrl+/
Перейти к определениюCtrl+B
Поиск по проектуCtrl+Shift+F
Generate (конструктор, getter)Alt+Insert
АвтодополнениеCtrl+Space
Запуск программыShift+F10
Отладка (Debug)Shift+F9
Find and ReplaceCtrl+R
Закрыть вкладкуCtrl+F4
Переход к строкеCtrl+G
Вырезать строкуCtrl+Y
Duplicate lineCtrl+D
Move line up/downAlt+Shift+Up/Down
Встроенный терминалAlt+F12
Панель GitAlt+9
Evaluate ExpressionAlt+F8
Открой Settings > Keymap, чтобы посмотреть все привязки клавиш и при необходимости изменить их под себя. IDEA также позволяет выбрать набор привязок в стиле Eclipse, Visual Studio или других IDE.

11. Полезные настройки и плагины

IntelliJ IDEA становится ещё продуктивнее с правильными плагинами и настройками.

Рекомендуемые плагины

ПлагинНазначение
LombokГенерация boilerplate-кода (getter, setter, builder) через аннотации
CheckStyle-IDEAПроверка стиля кода по правилам CheckStyle
SonarLintАнализ качества кода в реальном времени (баги, уязвимости, code smells)
Key Promoter XПоказывает горячие клавиши для действий, которые ты делаешь мышкой
Rainbow BracketsПодсвечивает скобки разными цветами для лучшей читаемости

Live Templates

Live Templates позволяют вставлять часто используемые конструкции кода по сокращению. Например, набрав psvm и нажав Tab, ты получишь:

public static void main(String[] args) {

}

Полезные шаблоны:

СокращениеРасшифровка
psvmpublic static void main
soutSystem.out.println()
forifor (int i = 0; ...) { }
itarfor (int i = 0; i < array.length; i++)
ifnif (x == null)
innif (x != null)

Настрой шаблоны в Settings > Editor > Live Templates. Ты можешь редактировать существующие, добавлять новые и назначать собственные сокращения.

Для работы Lombok убедись, что плагин установлен, и добавь зависимость в pom.xml. После этого аннотации @Data, @Builder, @Slf4j будут работать прямо в IDEA без дополнительных шагов.

12. Поиск и навигация по проекту

В большом проекте переключение между классами важнее скорости набора. IDEA даёт несколько уровней навигации: от файла к определению метода и к местам, где он вызывается.

ДействиеГорячая клавиша
Найти классCtrl+N
Найти файлCtrl+Shift+N
Найти любой символCtrl+Alt+Shift+N
Найти использованиеAlt+F7
Иерархия вызововCtrl+Alt+H
Ctrl+N — вводишь «Calc», IDEA открывает класс
Alt+F7 — курсор на методе: все места вызова
Ctrl+Alt+H — цепочка вызовов метода вверх

Вкладка Structure (Alt+7) показывает членов текущего класса, а панель TODO собирает пометки из всего проекта.

Научитесь «переходить» только клавишами: Ctrl+B (к определению) и Alt+F7 (к использованию). Это экономит десятки кликов в день.

13. Работа с базой данных

В Ultimate встроен инструмент Database Tools: подключайтесь к PostgreSQL, MySQL или Oracle, просматривайте таблицы, пишите SQL с автодополнением и генерируйте классы. В Community аналогичную возможность даёт плагин Database Navigator.

View -> Tool Window -> Database (+ в левом углу)
DataSource -> PostgreSQL -> пользователь и пароль
Далее: SQL Console -> пишем запрос, автодополнение готово
ВозможностьГде
Просмотр таблицдерево DataSource
SQL-консольправый клик по схеме
Сравнение схемCompare Two Schemes
Генерация сущностейGenerate POJOs из результата запроса
Не сохраняйте пароль базы в настройках проекта: заведите личную конфигурацию и передавайте учётные данные через переменные окружения.

14. Интеграция с Docker и терминалом

Современный Java-проект редко живёт без контейнеров: база, кэш и очередь часто поднимаются в Docker. IDEA позволяет управлять ими из окна Services: запустить, остановить и посмотреть логи, не выходя из IDE.

Services (Alt+8) -> Docker -> контейнер и образ
docker run -p 5432:5432 postgres:16
docker compose up -d   // несколько сервисов сразу
// docker-compose.yml в корне проекта
services:
  db:
    image: postgres:16
    ports: ["5432:5432"]
    environment: { POSTGRES_PASSWORD: dev }

15. Инспекции, анализ и профилирование

IDE не только подсвечивает ошибки — она ищет уязвимости, дублирование и опасные паттерны. Команда Analyze → Run Inspection by Name прогоняет сотни проверок за секунды.

Профилирование: вкладка запуска → кнопка Profiler подключает async-profiler и JFR. Пламя графа (flame graph) мгновенно показывает узкие места по CPU и выделениям памяти.

1. Запусти приложение в профилировщике
2. Повтори медленный сценарий
3. CPU Flame Graph — ищи широкие полосы в своём коде;
   «широкие» библиотеки обычно безопасны
До профилирования прогоните Inspect Code: половина «медленностей» — это лишние объекты в циклах, которые IDE подсветит сразу.
Профилирование в облаке и CI-агентах часто запрещено лицензиями: работайте на локальной машине или в изолированной среде.

16. Многомодульные проекты и профили сборки

Большие приложения часто делят на модули: common, api, web. IDEA видит такие проекты как дерево модулей и собирает их в правильном порядке.

Maven multi-module:
parent pom
  ├── common   (jar)
  ├── domain   (jar)
  └── web      (war, зависит от common+domain)

Профили сборки включают разные наборы зависимостей — dev, test, prod:

mvn compile -P dev
mvn package -P test
Ставьте цель «clean install» локально перед push — так CI не упадёт на зависимостях, не лежащих в репо.
При профилях не забывайте про <profile>-зависимости: IDEA кеширует разрешения, иногда требуется «Reload All Maven Projects».
Детали Maven/Gradle, в том числе профили — курс Maven и Gradle.

17. Отладка: точки останова, Evaluate, Drop Frame

Базовая отладка передана в разделе 6. Продвинутый уровень спасает, когда циклы большие, а стек вызовов запутан.

# условная точка останова
i == 500    # остановиться на 500-й итерации
# Evaluate (Alt+F8)
new BigDecimal(x).toString()
Условные точки дорогие на огромных циклах. Выносите условие в «if» уровня кода с временным отладочным выводом — в 10 раз быстрее.
После отладки убирайте точки останова и временные выражения: оставленный breakpoint может «заморозить» прод-задачу на лишние минуты.

18. Совместная работа и Code With Me

Удалённая парная разработка и код-ревью «в реальном времени» решаются встроенным Code With Me — хост открывает сессию, остальные подключаются, видят курсор и правят общий код.

Control panel → Code With Me → Share
# гость получает ссылку, права: read / write

Альтернатива для команды — пробел-статус через встроенную интеграцию с YouTrack/Jira и совместные запуски тестов.

Назначайте гостю право «comment only», пока тестируете — это снимает риск случайных правок.
Code With Me передаёт окружение. Закрывайте сессию после работы и не делитесь ссылками в публичных чатах.

19. Персонализация: инспекции, действия и стиль кода

Идеальная IDEA — настройка под стиль проекта: единый формат, инспекции под ваш риск, свои шаблоны и «быстрые правки».

Ctrl+Alt+S → Editor → Code Style → Java
  → задать собственный формат (отступы, поля)
→ Inspector: включить Nar те, что важны именно вам
Экспортируйте схему: File → Manage IDE Settings → Export — перенос на новую машину за 2 минуты.
Излишний свои правила в Code Style могут конфликтовать с командой. Согласуйте формат один раз и не меняйте в середине спринта.

20. Live Templates и File Templates: шаблоны кода

Повторяющиеся фрагменты — цикл по коллекции, логгер, заготовка метода — превращаются в сниппеты. Live Templates разворачиваются по аббревиатуре и заполняют поля с автодополнением.

Settings → Editor → Live Templates
// пример шаблона "logc"
private static final Logger LOG =
    LoggerFactory.getLogger($CLASS$.class); $END$

// встроенные: foreach + it, psvm, sout
Создавайте шаблон на каждую третью повторяющуюся вещь — за месяц наберётся рабочий набор «под себя».
Не перегружайте: 3–5 своих Live Templates реально используются, а сотня аббревиатур не вспоминается даже автором.

21. Поддержка Spring Boot и веб-разработки

IntelliJ IDEA Ultimate — фактически стандарт для Spring. Начать проект можно прямо через Spring Initializr из интерфейса: зависимости, группа и версия Java без ручной настройки Maven.

New Project → Spring Initializr
→ Java + Spring Web + Spring Data JPA
→ Create → дождаться загрузки зависимостей
Используйте «прыжок к бину» по Ctrl напишите имя — навигация по спринговому графу снимает часы поисков.
Community-редакция не включает Spring-инструменты: для курса достаточно базовой версии, но полный набор — только в Ultimate.

22. Удалённые серверы: SSH, Deployment и терминал

IDEA умеет открывать удалённый проект по SSH как локальный: редактирование, запуск и отладка Java происходят на сервере, а файлы синхронизируются автоматически.

Tools → Deployment → Configuration
→ SFTP: host, user, root path
→ Tools → Deployment → Upload to ...
// редактируете локально, сохраняете — на сервере готово
Настройте «Upload on save» для dev-сервера, а на боевой — выгрузку только вручную: автодеплой на прод при каждом Ctrl+S слишком рискован.
SSH по ключу вместо пароля и ограничение прав аккаунта — обязательны, а не рекомендация (см. курс Безопасность сервера).

23. Производительность IDEA: память, кэш и индексация

Заторможенная IDE съедает больше времени, чем любой тайп-стата. Основные рычаги — память JVM, исключение больших папок из индексации и очистка кэшей.

# Help → Edit Custom VM Options
-Xmx2048m           # максимум кучи
# Settings → Directories → Excluded:
#   out, target, node_modules, .git
# File → Invalidate Caches → Invalidate and Restart
На крупных проектах поднимайте -Xmx по реальному размеру исходников, а не по памяти ноутбука — и контролируйте через Memory Indicator.
Не выключайте проверки ошибок «ради скорости»: потеряете раннее выявление багов — регрессия дороже любых миллисекунд автодополнения.

Что дальше

Теперь ты знаком с IntelliJ IDEA и готов писать Java-программы. Рекомендуемый следующий шаг — изучение Maven и Gradle для управления зависимостями, затем JUnit для тестирования и Spring Boot для создания веб-приложений.

← Вернуться к курсам