IntelliJ IDEA 2021.3 – JetBrains оновила інтегроване середовище розробки програмного забезпечення
IntelliJ IDEA 2021.3 - Оновлення JetBrains IDE
JetBrains представила IntelliJ IDEA 2021.3 – останнє велике оновлення у 2021 році! Нову версію можна завантажити з веб-сайту JetBrains або через додаток Toolbox. Крім того, ви можете оновити з самої IDE або за допомогою пакета прив'язки, якщо ви користувач Ubuntu.
Ви знайдете багато нових функцій і поліпшень, щоб зробити роботу з IntelliJ IDEA ще більш зручною. З точки зору якості, JetBrains приділив особливу увагу вашим коментарям у баг-трекері. Якщо у вас виникли проблеми з цією версією, будь ласка, повідомте про це JetBrains .
Як завжди, детальну інформацію про всі нові можливості можна знайти на сторінці "Що нового". У цій публікації ми хочемо коротко розповісти вам про основні функції та покращення, включені в IntelliJ IDEA 2021.3.
Головний
- У цьому випуску JetBrains представляє можливості віддаленої розробки (бета). Тепер ви можете підключитися до віддаленого комп'ютера, на якому працює бекенд IDE, і працювати над розміщеним там проектом так, ніби він знаходиться на локальній машині. Ви можете використовувати цю функцію на головному екрані IntelliJ IDEA або завантаживши шлюз JetBrains через додаток Toolbox.
- Додано новий, швидший спосіб діагностики та виправлення проблем з IDE: дія Відновити IDE... в меню Файл .
- Розумний крок у дію тепер працює з кодом Kotlin. Він дозволяє налагодити вираз ланцюжком методів і лямбда-викликів, виділяючи ті методи і лямбди, які можна ввести.
- Зневаджувач може знаходити вбудовані функції Kotlin і показувати їх виклики на панелі трасування стека.
- Нова перевірка постійних умов дозволяє IntelliJ IDEA повідомляти про нетривіальні умови та значення, які завжди повинні бути істинними, помилковими або нульовими. Це працює так само, як подібна перевірка для Java.
Редактор
- Ви можете змінити розмір шрифту на всіх вкладках одночасно за допомогою ⌘+ коліщатка миші на macOS і Ctrl + коліщатка миші в Windows і Linux.
- У новій версії зручно вставляти таблиці в файли Markdown.
- Попередній перегляд тепер доступний для більшості дій із намірами та швидких виправлень у Kotlin. Якщо попередній перегляд не підтримується, відображається HTML-опис.
- Робота з вкладками редактора стала просто простішою. Щоб отримати доступ до всіх дій у вкладках, просто натисніть на три крапки у верхньому правому куті панелі вкладок.
Взаємодія з IDE
- Коли ви натискаєте F3 на macOS або F11 на Windows і Linux, позначені файли, папки та класи з'являються в новому вікні закладок . Детальніше ви можете дізнатися в цій статті.
- JetBrains додав можливість розділяти вікно «Виконати» за допомогою вкладок. Це дозволяє запускати кілька конфігурацій одночасно і бачити всі результати.
- Коли ви шукаєте дії через Пошук скрізь , IntelliJ IDEA використовує машинне навчання для сортування результатів.
- Перероблений порожній вузол Проекту в «Новому майстрі проектів» дозволяє створити простий проект для роботи з окремими файлами різного типу і додати в нього класи Java і Kotlin.
- Новий вузол Multi-Module Project дозволяє створити проект зі складною структурою з нуля.
- Нова версія IntelliJ IDEA використовує методи вищого рівня як об'єкт пошуку за замовчуванням, коли ви хочете використовувати реалізацію методу за допомогою комбінацій клавіш ⌥ F7 на macOS або Alt +F7 у Windows та Linux.
- У діалоговому вікні "Показати використання" тепер ви можете попередньо переглянути вихідний код для знайдених застосувань , а також змінити область пошуку та побачити тип елемента коду, який ви шукаєте, та кількість знайдених використань.
Режим спеціальних можливостей
- Коли невізуальний екран активний, IDE більше не показує спливаюче вікно з переліком вікон інструментів і спливаюче вікно швидкого перегляду документації, яке з'явилося при наведенні курсору миші.
- Крім того, JetBrains вирішив проблему з викликом діалогу Переходу до декларації .
- Також покращено підтримку режиму доступності на macOS. Ми виправили ряд проблем із фокусом VoiceOver і надали екранним читцям можливість знаходити елементи списку в майстрі нового проекту під час створення проекту.
- JetBrains видалив деякі звукові підказки, щоб зменшити відволікання.
Ява
- IntelliJ IDEA додала новий інспекційний незахищений рядок, переданий безпечному методу. Це допомагає запобігти передачі небезпечних даних на безпечні методи в проектах, які використовують анотації org.checkerframework.checker.tainting.qual. Серед проблем, які виявляє ця інспекція, є SQL-ін'єкції та слабкі сторони XSS.
- Ми додали дві перевірки, щоб спростити код. Перший пропонує замінити collect(toList()) на .toList(), який можна використовувати з Java 16 і пізнішими версіями. Другий пропонує замінити collection.addAll(List.of("x")) на collection.add(x), а map.putAll(Map.of("a", "b")) на map.put("a", "b")).
- Введення локальної змінної в Java більше не відкриває спливаюче вікно налаштувань, яке закриває код, над яким ви працюєте. Тепер ви можете відкрити налаштування за допомогою значка шестерінки поруч зі змінною або комбінацією клавіш⌥+⇧ +O в macOS або Alt+Shift+O в Windows.
- Коли ви викликаєте рефакторінг параметрів Enter , IDE запитує, де замінити знайдені входи. Коли ви виберете те, що хочете, з'явиться значок шестерінки. Натиснувши на неї, можна налаштувати інші параметри рефакторінга.
- У діалоговому вікні "Виконати/налагодження конфігурацій " ви можете встановити classpath для окремих конфігурацій, вибравши "Змінити параметри" | Змініть класну доріжку.
Котлін
- Новий рефакторінг дозволяє отримати константи в Kotlin.
- Можливе блокування дзвінка в неблокуючому контекстному огляді тепер можна налаштувати, охоплює більше випадків і пропонує швидке виправлення.
- Нові підказки в редакторі використовують математичні знаки, щоб пояснити, що означають слова і символи в діапазонах.
- Інтерфейс Нового майстра проектів тепер містить підказки для всіх полів. Крім того, JetBrains видалили деякі рідко використовувані шаблони і додали новий для створення Compose Web-додатків , а також спростили конфігурацію проекту.
JavaScript
- Оновити npm-пакети до нової версії можна прямо з редактора.
- Покращено доопрацювання html-коду. Тепер, коли ви вводите тег або назву абревіатури і викликаєте автозаповнення, IntelliJ IDEA відразу показує вам відповідні параметри.
Скала
- Велика увага при підготовці цього випуску JetBrains приділилася підтримці Scala 3. JetBrains додав підсвічування, навігацію та автозаповнення для кінцевих маркерів, заданих, використання та експорту ключових слів, м'яких ключових слів та тихого синтаксису. Крім того, зчитувач TASTy тепер може обробляти об'єкти пакетів, а також варіації та зв'язки у вищих типах.
- Крос-скомпільовані проекти Scala 3/Scala 2 можуть бути відкриті як проекти Scala 2.
- Плагін Scala тепер підтримує аналіз потоків даних, що полегшує пошук помилок у вашому коді.
- Параметри компілятора Scala тепер мають автозаповнення, і для кожного з них доступний швидкий перегляд документації.
- Для діапазонів у Скала можна використовувати вбудовані підказки.
ЩСХ
- Для конфігурації SSH ви можете вказати проксі-сервер HTTP або SOCKS (Налаштування/Налаштування | Інструменти | Конфігурації SSH).
Профайлер
- Версія IntelliJ IDEA Ultimate для Windows має вбудовану підтримку Async Profiler 2.0.
- Ви можете порівняти знімки, щоб побачити, чи не надали зміни в програмі бажаний ефект або призвели до погіршення стану.
Інструменти збірки
- Конфігурації Maven були істотно перероблені. Всі основні параметри тепер зібрані в одному вікні, і ви можете перейти до додаткових налаштувань, натиснувши на посилання Змінити параметри.
- Ви можете зберегти налаштування Maven для кожного проекту у файлі .mvn/maven.config . Для цього перейдіть до Налаштування/Налаштування | Створення, виконання, розгортання | Maven і виберіть Використовувати налаштування з .mvn/maven.config.
Керування версіями
- Функцію Checkout і Rebase on Current можна використовувати для віддалених відділень.
- JetBrains покращив структуру налаштувань у меню «Налаштування/Налаштування» | Контроль версій і полегшив доступ до деяких важливих конфігурацій.
- Різницю між комітами тепер можна переглянути в окремому вікні «Зміни » зліва від редактора.
- Нова дія Push all to here дозволяє вам просувати коміти, в яких ви впевнені (решта буде продовжувати зберігатися локально).
- Новий параметр "Вирівняти зміни підсвічення " спрощує сприйняття інформації на екрані Diff: лінії відображаються незмінними одна навпроти одної. В результаті можна чітко побачити, який код був доданий або видалений.
Термінал
- Нова функція підтримки ConPTY API для Windows вирішує ряд проблем, пов'язаних зі старою реалізацією і забезпечує підтримку 24-бітних кольорів в терміналі.
- Термінал тепер підтримує введення завчасно: IDE прогнозує, які символи ви збираєтеся ввести, і показує їх світло-сірим кольором.
Налагоджувач
- Поле «Обчислення » тепер доступне безпосередньо у вікні налагодження , і це найзручніший спосіб обчислення виразів.
Фреймворки і технології
- HTTP-клієнт IntelliJ IDEA забезпечує базову підтримку gRPC-запитів, включаючи заповнення коду і можливість створення gRPC-запитів безпосередньо в HTTP-клієнті.
- При тестуванні додатків, які транслюють дані в IntelliJ IDEA, більше не доведеться чекати закінчення потоку: HTTP-клієнт відображає результати в режимі реального часу.
- HTTP-клієнт знаходить зображення у відповідях і відображає їх попередній перегляд в консолі відповідей.
- У HTTP-клієнті налаштувати перенаправлення виводу на заданий файл або каталог можна за допомогою операторів >> і >>!.
- Ідентифікатори запитів можна додавати або як коментарі за допомогою @name, або як текст у першому роздільнику (###).
- Нова мова шаблонів Qute підтримується для проектів на основі Quarkus.
- IntelliJ IDEA може знайти специфікації OpenAPI, що зберігаються в декількох файлах і пов'язані з $ref, і забезпечує автозаповнення.
- Якщо ви додасте org.jetbrains:annotations:23.0.0 до залежності від проекту, ви можете додати @Blocking та @NonBlocking до класів та методів. В результаті IDE зможе знаходити блокування дзвінків в неблокуючих контекстах, таких як коротен Котліна або проектний реактор, RxJava і реактивний код заколоту малого жита.
- Покращено виявлення коду блокування навесні і Java EE.
- Діалогове вікно «Виконати/налагодження конфігурацій» для проектів весняного завантаження було перероблено, і тепер всі основні налаштування знаходяться в одному вікні, а доступ до додаткових параметрів можна отримати за допомогою посилання «Змінити параметри» .
- IntelliJ IDEA пропонує завершення коду в додаткових файлах конфігурації (властивості або файли .yaml), якщо ви використовуєте ключ spring.config.import для посилання на інший файл.
- Проекти весняного завантаження підтримують завершення коду та пошук посилань на application.yaml у @Value, @Scheduled та Environment.getProperty().
- Завершення методу запиту тепер працює для запитів, оголошених як @NamedQuery у проектах Spring Data JPA. Ви можете отримати доступ до визначення @NamedQuery , натиснувши на іконку на полях редактора.
- Усі перевірки CDI тепер можна використовувати у файлах Kotlin. Значки CDI також доступні на полях редактора. Ви можете використовувати їх для швидкого переходу до точок ін'єкції залежності та кандидатів, бобових фабрик та подій.
- JetBrains прискорив всі процеси для діаграм класу UML як на Java, так і на Kotlin. Інші важливі зміни включають нову сітку, виділення учасників класу та спливаюче вікно для швидкого перегляду документації.
Інтеграція з космосом
- Тепер ви можете створювати merge-запити та код-огляди для проектів у Космосі.
- IntelliJ IDEA відзначає всі неперевірені файли синіми крапками, щоб ви не пропустили важливі зміни під час перегляду коду.
Інструменти бази даних
- JetBrains додав можливість вибору агрегатного режиму для перегляду діапазону клітинок. Це полегшує управління даними і вам не доведеться надсилати непотрібні запити.
- Нова версія повністю підтримує робочий процес створення реального джерела даних DDL. У налаштуваннях конфігурації даних з'явилася нова вкладка зіставлень DDL, де можна співвіднести віртуальні джерела даних з реальними джерелами даних.
- Нове вікно порівняння відмінностей бази даних можна відкрити з контекстного меню. Його інтерфейс був покращений, і він чітко відображає результат синхронізації на правій панелі.
- Ми представили три рівні самоаналізу бази даних Oracle, з різною швидкістю виконання. Щоб змінити рівень самоаналізу, скористайтеся контекстним меню.
Kubernetes
- Форматування шаблонів Helm було значно покращено.
- Працювати з кодом, що містить вставку шаблонів Go, стало набагато простіше: ми додали підсвічування для елементів блоку Helm if, else, range, with and define.
- Нова версія IntelliJ IDEA підтримує виділення вкладеного коду на різних мовах в ресурсах ConfigMap для ключів з .yaml, .json, .properties і так далі.
- У вікні «Служби » з'явиться кнопка для повторення останньої команди Helm.
Докер
- У меню «Налаштування/Налаштування» , | Будувати, виконувати, розгортати за допомогою перемикача Minikube можна підключитися до Docker від Minikube.
- Всі доступні репозиторії зображень з'являються у вікні «Служби » в окремих вузлах. Крім того, додана підтримка GitLab (registry.gitlab.com) і JetBrains Space (<назва користувача>.registry.jetbrains.space). Детальніше про зміни в реєстрах Docker читайте в цій статті.
- Тепер підключитися до Docker можна швидше: досить двічі клікнути по потрібному вузлу або натиснути ⌘+Enter на macOS або Ctrl+Enter на Windows і Linux. Дія Контейнера "Пуск" викликається тим самим сполученням клавіш.
- Коли ви клацнете правою кнопкою миші на вузлах "Мережі", "Томи", "Контейнери " або "Зображення" можна вибрати нову дію "Очищення", а IDE видалить невикористані об'єкти.
- JetBrains додав підтримку Compose V2. Це дозволяє вводити команди Docker Compose у формі docker comp, а не docker-compose (через дефіс).
- Нова вкладка «Шари» у вікні «Служби» дозволяє відстежувати вміст шарів, розмір файлів і команди , які використовувалися для створення зображення.
- У вікні «Служби» можна натиснути правою кнопкою миші контейнер і вибрати пункт Image | Збережіть як нове зображення, щоб зберегти попередньо налаштований локальний контейнер на сервері та використовувати його пізніше.
- Нова версія додає підтримку Podman — ще один спосіб керування стручками, контейнерами та зображеннями. Перш ніж ви зможете використовувати Podman в IDE, потрібно налаштувати з'єднання.
Тестування
- Одним з найважливіших оновлень плагіна Selenium UI Testing є можливість не тільки створювати нові класи Page Object, але і редагувати існуючі за допомогою просунутого візуального редактора з вбудованим браузером.
- Для тих, хто вважає за краще управляти тестами, чек-листами і навіть тестовими ранами безпосередньо в проекті за допомогою спеціальних файлів Markdown (Local TMS), тепер є можливість створювати ієрархію тестових запусків. У той же час кожен тестовий запуск буде агрегувати інформацію з усіх дочірніх тестових запусків.
- Ми також додали підтримку форматування у вікні попереднього перегляду. Описи тестових кейсів і кроків завжди писалися на Markdown, але тепер форматування можна подивитися і змінити прямо у вікні попереднього перегляду TMS.
Інші можливості
- Додана підтримка Android Studio Arctic Fox 2020.3.1.
- Тепер доступна підтримка Groovy 4, включаючи повнофункціональний аналіз коду, перевірки та дії з намірами. Також підтримуються додаткові функції, такі як вирази перемикачів і запечатані типи.