Привет, Хабр!
На прошлой неделе состоялся релиз IntelliJ IDEA 2020.1, и в этом посте мы коротко расскажем о самом интересном в новой версии. Из крупного: мы добавили поддержку Java 14, анализ потока данных в отладчике, режим редактирования файлов без открытия проекта (LightEdit) и новые фичи для разных фреймворков. Все подробности можно узнать на странице What’s new.

Java

- Новая версия IntelliJ IDEA поддерживает Java 14. В частности, появилось автодополнение, навигация, инспекции, генерация конструкторов для записей (JEP 359) и возможность исправить перегруженные выражения instanceof-and-cast на лаконичные pattern-переменные (JEP 305).
- Больше не нужно качать Java руками. Можно скачать и установить JDK прямо в IDE, как при создании нового проекта, так и при открытии существующего.
- Мы добавили новые инспекции. Они проверяют корректность использования заглавных букв в шаблонах `SimpleDateFormat`, ищут избыточные вызовы методов, находят и предлагают удалить лишние экранирующие символы в строковых литералах и делают многое другое.
Редактор

- Появился долгожданный режим LightEdit. С его помощью можно быстро вносить изменения в отдельные файлы в облегченном редакторе, не создавая и не загружая проект. Открывать файлы в режиме LightEdit можно из командной строки (`idea file.extension`), с начального экрана IDE или из файлового менеджера операционной системы. Подробнее в блоге (англ.).
- Новые Rename и Change Signature позволяют изменить сигнатуру метода или класса, просто изменив параметры класса или метода в коде. Появится значок на поле редактора, нажав на который можно просмотреть и применить изменения к объявлению класса/метода и ко всем его использованиям. Подробнее в блоге (англ.).
- Читать Javadocs в редакторе весьма неудобно из-за обилия тегов, через которые приходится продираться, особенно если нужно перейти по ссылке. Поэтому мы научили IDE рендерить Javadocs прямо в редакторе.
- Добавлена первая реализация Code vision — фичи, которая позволяет видеть информацию о коде прямо в редакторе. В этой версии вы можете включить показ количества использований рядом с каждой декларацией.
А еще в редакторе появились:
- Быстрый просмотр определения типа для Java-символов.
- Отображение методов классов и интерфейсов в панели навигации.
- Дзен-режим для полного погружения.
- Умная проверка грамматики.
Отладчик

- В отладчике теперь поддерживается анализ потока данных. Он предсказывает, как будет выполняться программа. Когда выполнение приложения прерывается на точке останова, IDE производит анализ потока данных на основе текущего состояния программы и показывает, значения каких проверок будут равны true, а каких — false. Читайте подробнее в блоге (англ.).
- Теперь можно закрепить любое поле объекта в верхней части списка полей. Это удобно, когда у объекта так много полей, что трудно найти нужное.
Профилировщик

- В IntelliJ IDEA 2020.1 теперь можно открывать файлы дампов памяти `.hprof`, которые помогают обнаружить утечки памяти. Чтобы открыть hprof-файл, перейдите в раздел Help | Find action и введите «hprof» для поиска действия Open Hprof Snapshot. Обратите внимание, что эта функциональность пока находится в экспериментальном режиме.
- Профилировщик теперь может сворачивать рекурсивные вызовы и фокусироваться на вызовах методов с помощью соответствующих опций. Разобраться с работой профилировщика поможет данная данная статья в документации (англ.).
VCS

- Диалог Interactively Rebase from Here стал по-настоящему интерактивным. Теперь в нем есть диаграмма, показывающая, какие действия были применены к каждому коммиту, отображаются сведения о коммитах, и можно просмотреть различия и при необходимости отменить изменения.
- Мы переработали интерфейс для Commit и заменили модальный диалог полноценным инструментальным окном Commit. У новых пользователей это окно включено по умолчанию, а те, кто обновился со старой версии, могут включить его в меню Preferences/Settings | Version Control | Commit Dialog.
А еще:
- При отсутствии Git его теперь можно установить прямо из IDE.
- Обновлено окно Branches.
- На вкладке Log теперь отображается список веток.
Интерфейс

- Мы разработали собственный шрифт JetBrains Mono, получили массу положительных отзывов и решили сделать JetBrains Mono шрифтом по умолчанию в IntelliJ IDEA. Если вам вдруг не понравился JetBrains Mono, то всегда можно откатиться к старому системному моноширинному шрифту в Preferences/Settings | Editor | Font.
- В новой версии IDE появилась стандартная светлая тема, которая выглядит одинаково во всех операционных системах, — IntelliJ Light.
- Обновлен дизайн полей Find и Find in Path.
Фреймворки и веб

- IntelliJ IDEA 2020.1 Ultimate предоставляет поддержку Selenium, фреймворка для тестирования веб-приложений, через новый плагин Selenium UI Automation Testing. Плагин поддерживает самые популярные JVM-фреймворки для UI-тестирования и библиотеки генерации отчетов о тестировании: Selenium, Selenide, Geb, Serenity BDD и Allure Framework. Читайте отдельный большой пост про поддержку Selenium (англ.)
- В версии 2020.1 мы расширили поддержку фреймворка Spring WebFlux. IDE теперь корректно взаимодействует с `Rendering` API, поэтому работает автодополнение и переход к связанным представлениям. А еще мы добавили маппинги запросов, поэтому, если в вашем приложении WebFlux включен Actuator, вы можете получить доступ к маппингам в окне Run.
А еще:
- Добавлены автодополнение, навигация, рефакторинг Rename (Shift+F6) для JMS и Spring Messaging API.
- Новая версия IDE различает Spring профили в выражениях и позволяет применять к ним умные действия, например Find Usages (Alt+F7) или Rename.
- Для Micronaut добавлены автодополнение параметров в файлах конфигурации, а также навигация и быстрый просмотр документации.
- Добавлены инспекции для RxJava.
- Теперь можно создавать проекты Quarkus и MicroProfile с помощью мастера создания проектов.
- Добавлено распознавание фрагментов кода для R2DBC, Vert.x SQL Clients, Apache Spark SQL, Apache DB Utils и других библиотек.
- Появилась интеграция со Swagger Codegen — мощным инструментом для создания серверных заглушек, клиентов API и документации.
- Появилась навигация из файлов HTTP-запроса прямо к соответствующим сервисам.
- Тысяча и одно улучшение для JavaScript, про которые можно прочитать подробно в отдельном хабропосте.
Но и это еще не все
В новой версии улучшены инструменты баз данных (отдельный хабропост тут), поддержка Scala, Docker и Kubernetes (пост на англ.). А еще есть разные небольшие, но классные изменения, например возможность хранить конфигурации запуска в папках проекта и параллельное отображение окон терминала.
На этом все! Еще раз напомню, что подробнее обо всем вышесказанном можно прочитать на странице What’s new на нашем сайте.
Команда IntelliJ IDEA
ссылка на оригинал статьи https://habr.com/ru/company/JetBrains/blog/497554/
Добавить комментарий