IntelliJ IDEA 13.1: Весеннее обновление

в 8:49, , рубрики: AngularJS, intellij idea, java, javascript, nashorn, Блог компании JetBrains, разработка программного обеспечения, метки: , , , , ,

Привет!

Вместе с хорошим известием для Северного полушария, что продолжительность светлого времени суток увеличилась, мы хотим рассказать о релизе IntelliJ IDEA 13.1, случившемся на этой неделе. Но перед рассказом о новинках хотелось бы отметить еще одно, весьма ожидаемое всем Java-cообществом, событие…

IntelliJ IDEA 13.1: Весеннее обновление

Конечно же релиз Java 8. В версии 13.1 мы обеспечили полную поддержку Java 8, поэтому вы можете полноценно работать с последней редакцией языка уже сейчас, в знакомой для вас IDE.

JAVA 8

Внимательный читатель мог заметить, что уже в предыдущих версиях IntelliJ IDEA осуществлялась “предварительная” поддержка Java 8. Например, уже в 13 версии была добавлена поддержка отладки проектов, в которых используются анонимные классы и лямбда-функции.

Теперь новые инспекции и автодополнение кода позволят в полной мере эффективно работать с Java 8. Рассмотрим на примере, как с помощью новых инспекций можно быстро перевести ваш код на новый Stream API:

image

IDE помогает определить – какой именно метод используется для вашего лямбда-выражения, с помощью нажатия на значок интерфейса в левом поле редактора.

Если вы хотите сделать соответствующие правки в более, чем одном месте вашего проекта, то можно запустить соответствующую инспекцию (“foreach loop can be collapsed with stream api”) на всем проекте (или в другом заданном контексте) через Analyze → Run inspection by Name.

image

MULTIPLE SELECTIONS

Одной из важных фич, которую мы добавили в последние версии IntelliJ-based IDE, стала функция множественного выделения (известная как Multiple Selection, Multi Carets и Multiple Cursors). Multiple Selection позволяет вносить правки в код в нескольких местах одновременно, похожая функция на сегодняшний день есть в Submlime Text и некоторых других редакторах.

Как это работает:

  • Добавить/удалить выделение: Alt + Shift + Mouse Click
  • Выделить/отменить выделение следующего совпадения: Alt + J / Shift + Alt + J (Ctrl + G / Shift + Ctrl + G) для Mac OS X)
  • Выбрать все совпадения: Shift + Ctrl + Alt + J (Ctrl + Cmd + G для Mac OS X)
  • Клонировать курсор выше/ниже (горячие клавиши еще не назначены)
  • Удалить все выделения: Esc

Multiple selection отлично работает с другими возможностями редактирования кода IntelliJ IDEA: Code completion, Select word at caret, Join lines, Copy/paste, и другими:

image

Именно эта фича набрала наибольшее количество голосов в нашем треккере.

POSTFIX CODE COMPLETION

Другой важной возможностью, появившейся в версии 13.1, является постфиксное автодополнение кода или postfix code completion. С его помощью вы можете заменять одно выражение (которое вы уже ввели) на другое в зависимости от добавляемого вами постфикса. Функция полезна именно в том случае, если вы уже что-то ввели и теперь хотели бы изменить это выражение, не возвращаясь и не изменяя код.

Например, если к логическому выражению добавить постфикс “.if”, то оно автоматически будет обернуто оператором ветвления if, и курсор переместится в тело оператора. Аналогичным образом “.notnull” оборачивается конструкцией с проверкой на значение null.

image

Таким образом postfix completion позволяет в меньших случаях перемещать курсор в обратном направлении, сохраняя ваше время.

NASHORN DEBUGGER

Для тех, кто планирует использовать runtime Nashorn (о том, что это такое можно почитать в других хабростатьях) для запуска JavaScript в своих приложениях, будет полезным узнать о новых возможностях отладчика IntelliJ IDEA. Теперь можно ставить брейкпоинты и перемещаться между ними, даже если вы отметили строки в JavaScript. Кроме того, если JavaScript ссылается на объект из Java, отладчик будет перемещаться в Java-код и обратно в скрипт в зависимости от последовательности кода и выставленных брейкпоинтов:

image

Более подробно про отладку проектов с JDK8’s Nashorn JavaScript можно прочитать в нашем блогпосте.

CHRONON “BACK-IN-TIME” JAVA DEBUGGER

IntelliJ IDEA 13.1 Ultimate edition обзавелась еще одним очень полезным плагином для интеграции с Сhronon. С его помощью можно записывать историю выполнения программы, и затем очень удобно ее просматривать, перемещаясь по коду и просматривая значения полей в каждый момент вызова конкретного метода. Это делает процесс поиска “сложных” багов более эффективным:

image

Chronon является коммерческим продуктом. Однако пользователи IntelliJ IDEA Ultimate могут пользоваться им совершенно бесплатно в IDE. Как добавить плагин и о подробностях его использования можно прочитать здесь.

ANGULAR-JS, SPY-JS, LIVE CONSOLE

AngularJS

В последней версии IntelliJ IDEA мы также расширили поддержку фреймворка AngularJS.

  • Была добавлена поддержка автодополнения имен директив (directives), контроллеров (controller) и приложений, а также code insight для данных, размещенных внутри фигурных скобок.
  • Angular-specific navigation позволяет легко перемещаться от имени контроллера в HTML к его определению в Javascript, или от ngView или $routeProvider к его темплейтам.
  • Теперь можно вызвать AngularJS документацию для директив прямо из редактора.

image

Spy-JS

Spy-JS — это мощный инструмент для трассировки JavaScript. С помощью него можно просматривать полный список событий, открывать дерево вызовов и подсвеченный путь выполнения кода. Вы также можете просматривать stack trace для выделенного участка кода, фильтровать скрипты и события, следить за производительностью кода. Spy-JS приспособлен для работы на любых стационарных и мобильных браузерах, позволяет эффективно профилировать и отлаживать код.

image

Более подробно про SPY-JS можно почитать в хабростатье.

Live Console

С сonsole читатель скорее всего знаком по работе с отладкой в браузере, однако теперь эта фича доступна и в IDE во время отладки веб-страницы. В консоли вы можете исполнять команд и запускать JavaScript.

image

WHAT ELSE?

  • Улучшилась производительность для проектов на фреймворке Spring, которые используют большие объемы XML. (Ultimate Edition)
  • Добавлены улучшения в системы контроля версий: Amend commit для Merсurial, 2х этапная аутентификация в GitHub, улучшенные Log и Diff viewer.
  • Отладка приложений, запущенных на OpenShift (Ultimate Edition).

Более подробно со списком новых возможностей можно ознакомиться на странице www.jetbrains.com/idea/whatsnew/index.html

Скачать новую версию можно — сами знаете где: http://www.jetbrains.com/idea/download/

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

Автор: beenom

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js