На прошлой неделе мы выпустили очередное крупное обновление — IntelliJ IDEA 2016.1. Ранее я уже писал подробно о доступных в нем улучшениях, а в этом посте лишь приведу их краткий список, дам ссылки на новые видео, и, конечно, буду рад ответить на ваши вопросы в комментариях.



Среди основных улучшений:

  • Отладчик
    • Выражения Groovy в Evaluate Expression и Watches теперь можно использовать при отладке Java кода
    • Более удобная отладка нескольких потоков
    • Предупреждения при несовпадении исходного кода с запущенной копией

  • Системы контроля версий
    • Поддержка Git worktrees
    • Более удобный мердж и сравнение, благодаря подсветке изменений на уровне слов

  • Редактор
    • Сдвиг выражений вправо и влево
    • Автоматический импорт статических методов и констант
    • Поддержка языков, записываемых справа налево (например, арабского и иврита)

  • Gradle
    • Поддержка custom source sets: теперь каждый source set представлен отдельным модулем и может иметь собственные зависимости (в результате было исправлено огромное количество проблем)
    • Автоматическая конфигурация EAR-артефактов

  • Java 8
    • Inline Method и Change Signature трансформируют method references в лямбда выражения
    • Инспекции, проверяющие корректность использования method references, лямбда-выражений и типа Optional
    • Инспекции, помогающие мигрировать код, использующий FluentIterable, Function, Optional и Predicate из библиотеки Guava, на соответстующий API Java 8

  • Kotlin
    • Поддержка Kotlin 1.0
    • Плагин Kotlin Edu для интерактивного изучения Kotlin

  • Scala
    • Автодополнение теперь учитывает тип символов, контекст и историю их использования.
    • Автодополнение для выражений pattern matching теперь подсказывает имена свойств case-классов.

  • JavaScript
    • Улучшенные подсказки для ECMAScript 6, TypeScript и AngularJS 2
    • Удобная отладка асинхронного кода

  • Фреймворки Spring
    • Расширена функциональность подсказок для Spring Boot
    • Улучшенна поддержка Spring MVC
    • Исправлено много известных проблем

  • Thymeleaf
    • Подсказки для пользовательских диалектов
    • Поддержка Thymeleaf 3.0

  • Android Studio 1.5
    • Профилировщик утечек
    • Новые проверки lint

  • Docker
    • Поддержка Docker Machine
    • Отдельное окно (tool window)
    • На правой панели теперь отображаются логи и элементы интерфейса для управления переменными среды и привязками портов













Кроме того, вся плафторма IntelliJ мигрировала на Java 8: для разработки плагинов теперь можно использовать Java 8.

Начиная с IntelliJ IDEA 2016.1, схема версионирования всех продуктов JetBrains Toolbox меняется. Теперь вместо одного большого релиза в год планируется выпускать несколько равноценных релизов. Подробнее о том, почему и как именно новое версионирование будет работать, можно прочитать здесь.

Скачать новую версию IntelliJ IDEA можно на сайте JetBrains.

Комментарии (99)


  1. Xu4
    01.04.2016 03:56
    +1

    Мне версия PhpStorm 2016.1 (OS X 10.11) что-то не очень понравилась. Лично по моим ощущениям, не добавилось никакого нового функционала, который мне помог бы стать более продуктивным. Кроме этого, появились и минусы, которые вообще мою продуктивность снижают.

    Минусы:

    • В PhpStorm 10 файлы проекта индексируются несколько секунд, а в версии 2016.1 при каждом запуске индексирование занимает несколько минут (а пока идёт индексирования, работать в редакторе практически невозможно из-за тормозов интерфейса).
    • Версия 2016.1 сбила очень много моих настроек подсветки кода (хотя, как я помню, это беда любого мажорного релиза PhpStorm — после обновления в логике подсветки синтаксиса всё время что-нибудь меняется, какая-нибудь кастомная настройка обязательно после этого теряется; но версия 2016.1 сломала больше настроек, чем обычно).
    • В версии 2016.1 периодически начинаются тормоза интерфейса — точно такие же, которые бывают при реиндексации файлов проекта, но при этом вообще нет индикатора того, что идёт какая-то индексация.
    • Варианты автодополнения кода теперь появляются гораздо медленнее. Иногда из-за этого складывается впечатление, что оно вообще не работает. В подобных ситуациях, если я нажимаю <ctrl + space>, чтобы принудительно вызвать варианты автодополнения, появляется пустой список с индикатором загрузки, и этот список заполняется вариантами дополнения только через секунд 10–15 ожидания.
    • <cmd + click> для URL внезапно перестал работать. В трекере, JetBrains, кстати, уже куча репортов на эту тему собралась. В 10-й версии нормально работает, а в 2016.1 вообще ничего не делает. Лично я этой функцией часто пользовался, и то, что она перестала работать, теперь требует от меня тратить лишнее время на выделение текста ссылки, копирование её в буфер, переход в браузер, открытие новой вкладки и ввод адреса.

    Лично моё мнение (которое я никому не навязываю), версия 2016.1 — деструктивная для PhpStorm, и лучше её вообще не ставить. Про IDEA 2016.1 в целом ничего сказать не могу, потому что я покупал лицензию только на PhpStorm.


    1. Borz
      01.04.2016 08:03
      +2

      про долгое автодополнение: https://youtrack.jetbrains.com/issue/WI-30743
      Но подобная проблема наблюдается и просто в IDEA в Gradle скриптах


      1. grossws
        01.04.2016 13:35
        +1

        И в более-менее больших maven-проектах при редактировании pom.xml при включенном auto-import. В 15 таких тормозов на том же проекте не было.


    1. artspb
      01.04.2016 08:32

      Спасибо за подробный отчет. Давайте по пунктам.

      В PhpStorm 10 файлы проекта индексируются несколько секунд, а в версии 2016.1 при каждом запуске индексирование занимает несколько минут (а пока идёт индексирования, работать в редакторе практически невозможно из-за тормозов интерфейса).

      Вообще, при каждом запуске индексирования быть не должно, если между запусками дерево проекта не было существенно изменено. Пробовали сбросить кэши? Если да и не помогает, есть возможность записать скринкаст?
      Версия 2016.1 сбила очень много моих настроек подсветки кода

      Здесь без конкретики сложно что-то сказать.
      В версии 2016.1 периодически начинаются тормоза интерфейса — точно такие же, которые бывают при реиндексации файлов проекта, но при этом вообще нет индикатора того, что идёт какая-то индексация.

      Есть возможность отловить такую ситуацию и записать снэпшот CPU?
      Варианты автодополнения кода теперь появляются гораздо медленнее. Иногда из-за этого складывается впечатление, что оно вообще не работает. В подобных ситуациях, если я нажимаю <ctrl + space>, чтобы принудительно вызвать варианты автодополнения, появляется пустой список с индикатором загрузки, и этот список заполняется вариантами дополнения только через секунд 10–15 ожидания.

      Проект с открытым кодом? Если нет, есть возможность сделать изолированный фрагмент, на котором это воспроизводится, или приватно прикрепить проект к тикету, упомянутому выше?
      <cmd + click> для URL внезапно перестал работать. В трекере, JetBrains, кстати, уже куча репортов на эту тему собралась.

      Да, проблема известна. Голосуйте за тикет: WI-31269.


      1. Xu4
        01.04.2016 10:19
        +1

        Сорри, я ваш разбор полётов не могу поддержать прямо сейчас. Обновление до 2016.1 прилетело в очень неудачный для меня момент и своими глюками меня расстроило.

        Я, к слову, тикет про неоткрывающиеся линки тоже создавал. Но его закрыли и прилинковали к другому репорту — причём не к тому, на который вы только что ссылку оставили, а к WI-28548. У меня, возможно, сейчас проявляется потребительское отношение, но у вас какой-то беспорядок там. Я не хочу в нём участвовать, сорри.

        Расшарить код я не могу, потому что он коммерческий. Кодовая база большая, но 10-я версия её очень хорошо тянет. Мне не очень удобно сейчас заниматься волонтёрством, чтобы воспроизвести и сэмулировать всё без текущей кодовой базы, которую я шарить не буду. Тем более, я уже вернул 10-ю версию PhpStorm.

        Но, вообще, IDE у вас классные. Если я буду искать какой-нибудь редактор для программирования на других языках, я обязательно буду в первую очередь смотреть на ваши продукты. Тем более, цены у вас вполне демократичные для такого большого набора функций. Спасибо!


        1. artspb
          01.04.2016 16:39

          Жаль. Но все равно спасибо на добром слове! Попробуйте 2016.1.1, когда выйдет, там будет пачка фиксов.


  1. DjOnline
    01.04.2016 11:36

    Как правильно обновлять PHPStorm, чтобы не слетала история изменений?


    1. artspb
      01.04.2016 16:43

      Если речь идет о Local History, то пока, к сожалению, никак. Есть на это тикет (IDEA-61385), там можно подписаться на изменения.