Доступна IntelliJ IDEA 15 Preview

Вчера JetBrains опубликовал превью IntelliJ IDEA 15.

Для тех, кто не участвует в EAP, это возможность познакомиться с новой версией. Для нас это возможность рассказать о том, над чем мы работали в последнее время.

image

Во-первых, продолжая адаптировать IDE к Java 8, мы улучшили взаимодействие дебаггера с лямбда выражениями. Теперь при установке брейкпоинта вы можете указать не всю строку, а конкретное лямбда выражение, которое в ней содержиться. Точно также вы можете применять Run to cursor по отношению конкретному лямбда выражению вне зависимости от того на какой строке оно находится. И наконец если вы вызываете Step Into, IDE предложит перейти к лямбда выражению, являющемуся параметром.

image

Кроме того в дебаггер был добавлен экшн Force return, который позволяет прервать исполнение текущего метода и вернуть выбранное вами значение. Это удобно, если вы хотите поменять логику выполнения кода в целях отладки.

Во-вторых, недавние улучшения алгоритма индексации позволили реализовать инспекцию для мгновенного обнаружения дупликатов кода. Теперь если напишете или скопируете код, уже содержащийся в другой части проекта, IDE сразу же вам об этом сообщит и покажет совпадения. Чтобы сделать инспекцию ненавязчивой, мы показываем только совпадения длиннее 5-ти строк.

image

Интерфейс также подвергся изменениям. Run configurations теперь имеют индикаторы состояния. Если конфигурация типа Single instance only, кнопка Run будет выглядеть как Restart.

image

Гаттер теперь позволяет запускать приложения и тесты. Более того, для тестов, он теперь умеет отображать результаты последнего запуска.

image

Появилась возможность скрывать ненужные Tool windows не отключая при этом плагин. Для этого достаточно выбрать пункт Remove from Sidebar в меню соответствующего Tool window.

Функция поиска текста также стала удобнее. Когда вы вызываете Find in Path, теперь IDE умеет отображать результаты мгновенно в закладке Preview. Это позволяет тратить меньше времени на переход в окно поиска и обратно.

image

Rebase стала полноценной операцией и доступна в меню Branches, унаследовав синхронные операции над несколькими репозиториями, автоматический стешниг локальных изменений и резолв конфликтов. Само меню Branches стало доступно из закладки Log.

image

При нажатии на гаттер, IDE теперь выделяет изменения отдельных частей строки. Также гаттер научился отличать изменения whitespace от других изменений: грязно-желтый цвет вместо синего.

Во время операции по резолву конфликтов теперь можно пользоваться командой Undo. В Diff viewer был добавлен экшн Annotate.

Пользователи Mercurial получили инструменты для работы с патчами. Пользователи Perforce получили возможность хранить локальные изменения на сервере Perforce: операция Shelve in Perforce.

Плагин для работы с Docker улучшился за счет удобного редактирования настроек контейнера; быстрого создания контейнера для выбранного имаджа; и поддержки Docker Toolbox.

image

Мы поддержали новые возможности добавленные в Spring 4.2: @Bean на дэфолтных методах в интерфейсах; @Import для обычных классов; аннотации @EventListener, @AliasFor, и @ContextConfiguration.

image

Улучшена поддержка Spring Boot проектов: добавлены подсказки в application.yml и additional-spring-configuration-metadata.json файлах; добавлена автоматическая настройка фасета на основе аннотаций; улучшено создание проектов через Spring Initializr.

Для Arquillian мы добавили возможность конфигурации контейнеров. Затем контейнер можно указать при запуске тестов.

В Scala плагине были добавлены поддержка SAM (single abstract method); интеншн для развертывания макросов; Postfix комплишн; Inline рефакторинг дла Type aliases; а также распознавание динамических имен тестов (например “test(variable)” или “test(stringExpression)”).

Язык Kotlin, разрабатываемый в недрах JetBrains, приближается к скорому релизу, внося последние важные изменения в синтаксис, совместимость с Java, и поддержку IDE. Результатом этой работы стало то, что плагин для Kotlin теперь поставляется вместе с IDE. Для тех, кто не знаком с Kotlin, а также тех, кто давно не интересовался им, это прекрасная возможность исправить это. Подробнее о последних изменениях можно прочитать в блоге Kotlin.

Работая над Kotlin и Scala мы не забываем и про Groovy. Для него мы добавили поддержку Builder AST трансформации.

Фронтенд разработчики, использующие React, будут рады узнать об улучшенной поддержке в JSX файлах: добавлены комплишн, инспекшны, Surround with экшн, и навигация.

image

Также добавлена поддержка новых языковых конструкций TypeScript 1.6 и некоторые EcmaScript 7 (например async/await).

Не секрет, что JetBrains трудится над новой IDE для работы с SQL и базами данных. Поскольку IntellIJ IDEA включает этот функционал, стоит упомянуть его улучшения. Главным из них является нативная и быстрая интроспекция: получение информации об объектах базы данных с учетом специфики неучтенной в JDBC драйверах. Также появился удобный редактор таблиц, и возможность смотреть Execute plan для запросов.

image

Кроме прочего превью включает изменения Android Studio 1.3, включая Android Memory (HPROF) Viewer и Allocation Tracker.

Буду рад ответить на любые вопросы!

© Habrahabr.ru