- PVSM.RU - https://www.pvsm.ru -

Что нового в IntellIJ IDEA 2016.3 EAP

Вчера стала доступна IntellIJ IDEA 2016.3 EAP [1] – программа “раннего” доступа к обновлению, запланированному на эту осень.

image

Для справки. Официально программа называется Early Access Program. На практике это аналог alpha-версии. Обновления появляются в среднем с недельной периодичностью. Каждый желающий может установить дистрибутив, попробовать новые функции и поделиться своим мнением и идеями в трекере [2].

В этом посте я расскажу о главных нововведениях, которые уже доступны в EAP-билде.

Отладчик

Class-level watches

Остлеживание значений выражений стало удобнее. Теперь выражения можно объявлять не только глобально, но и на уровне конкретных классов. Эти выражения будут отображаться аналогично полям класса.

image

Выражения указываются в контексте экземпляра класса.

Отображение примитивных типов

Теперь Java Type Renderers можно объявлять и для примитивных типов, включая массивы.

image

Анализ содержания памяти

С помощью нового плагина JVM Debugger Memory View [3], во время отладки вы можете исследовать содержание памяти.

Окно инструментов Memory View отображает количество экземпляров каждого класса. Чтобы открыть окно инструментов, воспользуйтесь главным меню: ViewTool WindowsMemory View.

Колонка Diff отображает как количество экземпляров изменилось с момента предыдущей остановки. Таким образом вы можете следить за созданием новых экземпляров.

image

Двойной клик на строчке класса откроет список экземпляров этого класса. Mark Object, Evaluate Expression, Add to Watches и другие операции отладки доступны применимы к любому экземпляру в этом списке.

image

Catch class filter

Следующее улучшение касается отладки исключений. Теперь вы можете задать границы Exception Breakpoint, указав пакеты, в которых это исключение ловится, – иначе говоря, в которых стоит try-catch выражение.

image

Контроль версий

Отмена коммита

Откатить последний неопубликованный коммит теперь можно одним кликом: выделите его в закладке Log и вызовите Undo Commit из контекстного меню. Действие эквивалентно команде “git reset --soft HEAD^”. Это значит, что изменения не пропадут, а перейдут в Local Changes.

image

Удаление веток

Теперь если вы удаляете локальную ветку, IDE предложит также удалить ветку, на которую она ссылается, либо откатить удаление.

image

Sign-off commit

Диалог Commit Changes теперь предоставляет опцию Sign-off commit.

File colors

Теперь в диалогах и окнах инструментов контроля версий каждый файл подсвечивается в соответствии с настройками File Colors.

image

Интерфейс

Recent tests

Теперь вы можете нажать Ctrl+Shift+; (Cmd+Shift+; для OS X) и увидеть список последних тестов. Список содержит как последние успешные конфигурации тестов так и неуспешные индивидуальные тесты. Enter–запуск теста; F4–переход к коду.

image

Текстовый поиск

Теперь, если вы вызываете Find in Path из редактора, настройки сохраняют указанные ранее значения, а не сбрасываются как раньше.

Java

Лямбда выражения в File Structure

Попап и окно инструментов Structure теперь могут показывать лямбда выражения, если соответствующая настройка включена. Включить ее можно нажав Ctrl+L (Cmd+L для OS X).

image

Некоторые интеншены стали инспекциями

Основное отличие инспекций от интеншенов заключается в том, что инспекции можно применить сразу на многих файлах. Мы выбрали ряд интеншенов, для которых это имеет смысл, и сделали из них инспекции: в частности Lambda can be replaced with anonymous class и Diamond can be replaced with explicit type arguments.

image

Настройки инспекции unused declaration

В инспекцию Unused declaration добавлены настройки Members to report. Теперь вы можете выбрать, на какие члены класса и модификаторы испекция будет распространяться.

Иерархия мета аннотаций

Окно инструментов Type Hierarchy теперь работает и для мета-аннотаций и позволяет видеть их иерархию. Это может быть особенно полезно для Spring или, например, JUnit 5.

JavaScript and CSS

Flow

Теперь, если вы указали Flow [4] в качестве версии JavaScript, вы начнете получать сообщения о проблемах в коде прямо в редакторе для тех файлов, которые аннотированы "// flow [5]".

image

Чтобы это работало, не забудьте указать путь к локально установленному Flow в SettingsLanguages & FrameworksJavaScriptFlow.

Переименование методов в TypeScript

Переименование методов в TypeScript стало безопасным:

  • Если метод наследует или переопределяет метод из других классов/интерфейсов, IDE предложит переименовать базовые методы;
  • Если, существуют другие методы, переопределяющие или наследующие переименовываемый метод, IDE переименует и их.

image

Генерация кода Angular 2

Инструмент Angular CLI теперь интегрирован в попап Generate New, доступный по Alt+Ins (Cmd+N для OS X).

image

PostCSS

Для PostCSS [6] теперь есть плагин. Установив плагин, вы получите подсказки, форматирование, навигацию, инспекции, переименование и другие функции предлагаемые для обычного CSS.

image

Группировка генерируемых файлов

В окне инструментов Project генерируемые файлы теперь группируются вместе с исходными файлами (если они в той же директории): например, ".css", ".css.map" и ".sass"; ".js", ".js.map" и ".ts"; и т.п.

Кроме нововведений обновление конечно же содержит массу багфиксов. Пока это все. Свежие EAP билды будут появляться каждую неделю.

Если обнаружите баги, пожалуйста сообщайте о них в наш трекер [2].

Ссылка на скачку EAP-билд: https://confluence.jetbrains.com/display/IDEADEV/IDEA+2016.3+EAP [1].

Буду рад ответить на вопросы.

Программируйте с удовольствием!

Автор: JetBrains

Источник [7]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/java/181203

Ссылки в тексте:

[1] IntellIJ IDEA 2016.3 EAP: https://confluence.jetbrains.com/display/IDEADEV/IDEA+2016.3+EAP

[2] трекере: https://youtrack.jetbrains.com/issues/IDEA

[3] JVM Debugger Memory View: https://plugins.jetbrains.com/plugin/8537?pr=idea

[4] Flow: https://flowtype.org/

[5] flow: https://habrahabr.ru/users/flow/

[6] PostCSS: http://postcss.org/

[7] Источник: https://habrahabr.ru/post/308820/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best