Отрасль разработки программного обеспечения развивается молниеносными темпами. На рынок постоянно выходят новые технологии, инструменты и “маст-хэв” продукты, заставляя программистов ежегодно обновлять свой арсенал. Каким бы эффективным ни был язык программирования или фреймворк, рано или поздно возникает что-то еще более быстрое и мощное. Создавая продукты для разработчиков, мы в JetBrains стараемся угнаться за этим разнообразием, не упуская из виду главное — насколько инструмент разработки удобен в использовании.

Прошлой зимой мы объявили, что работаем над новой средой программирования на основе платформы IntelliJ — для языка Go. До недавнего времени эта IDE была известна под кодовым названием Gogland (в честь острова Гогланд в Финском заливе, в 180 км к западу от Санкт-Петербурга), но в качестве окончательного названия был выбран GoLand.

Сегодня мы, наконец, выпустили официальную версию GoLand 2017.3. Предлагаем вам скачать ее, и если понравится, купить!

Если вы уже используете IntelliJ IDEA Ultimate, то все возможности GoLand можете пользоваться прямо в ней, просто установив этот плагин.

image

Возможности GoLand

Задача GoLand — предоставить тот же уровень удобства при программировании на Go, который PyCharm обеспечивает для Python, а IntelliJ IDEA — для Java. В GoLand вас ждет умное автодополнение кода, мгновенные инспекции, быстрые исправления и удобная навигация.

Кроме того, в IDE есть встроенные средства запуска тестов, анализ покрытия кода тестами и отладчик. Также присутствует поддержка Git, Docker, баз данных, терминал и многие другие полезные инструменты. GoLand полноценно поддерживает фронтэнд-разработку и умеет работать с JavaScript, TypeScript, React, Vue.js, Angular и другими технологиями.

Про последние нововведения вы можете прочитать в новостях нашей программы EAP, а для ознакомления с полным описанием функций — посетить веб-сайт GoLand (на английском).

Несмотря на “длинный” номер версии — GoLand 2017.3 — это только начало. Мы будем совершенствовать все системы и аспекты IDE, включая инспекции, рефакторинги, отладчик и прочие. Если вы знаете, какой фичи не хватает, или вдруг наткнетесь на баг, сразу пишите в наш трекер или в наш твиттер @GoLandIDE.

Модель лицензирования

Как и другие наши десктопные продукты, GoLand распространяется по подписке для организаций и физических лиц, с ежемесячной или ежегодной оплатой. При непрерывной подписке вы можете сэкономить до 40%, начиная с третьего года и далее. GoLand также входит в пакет All Products вместе с другими нашими IDE и .NET-инструментами.

Чтобы узнать больше о ценах, а, может быть, подать заявку на бесплатную лицензию, зайдите на страницу Buy. Или просто скачайте бесплатную 30-дневную пробную и испытайте GoLand в действии без каких-либо обязательств.

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

Частота обновлений

Крупные обновления для GoLand будут выпускаться трижды в год: весной, летом и зимой. Мелкие апдейты будут выходить чаще и будут доступны даже в том случае, если вы решите приостановить подписку.

Ваша команда JetBrains GoLand
The Way to Go

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


  1. KirEv
    30.11.2017 17:39

    Мне нравится, давно пользуюсь,

    но есть мелочь незначительная, но местами достадная
    когда в корне проекта лежит пакет, например

    lib/app/responses/xml.go


    то без явного импортирования пакета

    import "./lib/app/responses/xml.go"


    для использования в других местах проекта — автокомплит не предлагает еще не подключенный пакет в пределах конкретного проекта.

    было бы хорошо, чтобы индексировались пакеты внутри проекта :)

    а так, спасибо за вашу работу, очень помогает в моей работе :)


    1. andreycheptsov Автор
      30.11.2017 18:24
      +1

      Спасибо! Эта функциональность работает, если проект следует Go Workspaces и проект лежит под GOPATH. Сценарий с относительными путями мы не поддерживаем и в ближайшем будущем не планируем.

      Про Go Workspaces: golang.org/doc/code.html#Workspaces


  1. L3333437
    30.11.2017 17:40

    А на бесплатную версию можно плагин поставить?


    1. andreycheptsov Автор
      30.11.2017 17:45

      Если речь идет о IntelliJ IDEA Community Edition, то к сожалению нет. Только Ultimate.


  1. WebProd
    30.11.2017 17:50

    А исправили баг с сортировкой при автоимпорте?


    1. andreycheptsov Автор
      30.11.2017 18:27

      Да. Если указать критерии сортировки в File | Settings | Go | Imports, то авто-импорты будут им следовать.


      1. WebProd
        02.12.2017 15:23

        Нет, нет, с этим все хорошо было. Проблема была при добавлении импорта из GOPATH при наличии только встроенных импортов. IDE зависала и все, больше ничего в редакторе нельзя было писать, хотя все остальные менюшки работали


  1. UncleAndy
    30.11.2017 19:26

    «разботчиков некоммерческих проектов с открытым исходным кодом, GoLand доступен бесплатно.»

    Такой интересный вопрос. Если я разрабатываю на Go как открытые проекты, так и закрытые, я могу претендовать на бесплатную лицензию?


    1. andreycheptsov Автор
      30.11.2017 19:34
      +1

      Главное, что вы является «активным» контрибьютором, не осуществляете коммерческих услуг, связанных с этим open-source проектом, и не получаете зарплату за работу над этим open-source проектом. Подробнее: www.jetbrains.com/buy/opensource/?product=go


      1. VolCh
        01.12.2017 11:36

        Имелось в виду, наверное, что можно ли использовать IDE с OSS лицензией не только для OSS проектов, но и для закрытых. Грубо, получил OSS за проект, в котором по вечерам работаю, могу ли на работе использовать?


        1. andreycheptsov Автор
          01.12.2017 12:49

          Формально нет. Но проверить мы не сможем.


  1. JekaMas
    01.12.2017 09:31

    Очень не хватает хороших инструментов для рефакторинга.
    После мира C#,php тяжко с инструментами на go.


    1. andreycheptsov Автор
      01.12.2017 12:50

      Планируем заниматься этим. Будем очень признательны за более подробную инфу, что не хватает в первую очередь.


      1. evnuh
        01.12.2017 15:17

        GoSharper :)


        1. wtf_object
          01.12.2017 15:46

          Resharper –– результат многолетнего труда. К сожалению, до мира go такой инструмент дойдет не скоро. Пока что можно довольствоваться базовыми вещами :)


          1. evnuh
            01.12.2017 20:09

            Пока и базовых вещей нет в плане рефакторинга. Вот умеет IDEA парсить код чтобы подсказывать, осталось ещё немного чтобы научилась хотя бы минимально это всё рефакторить.


        1. JekaMas
          02.12.2017 13:54

          Это было бы чудесно!


      1. JekaMas
        02.12.2017 14:07

        Спасибо!
        Из того, что чувствуется наиболее важным:

        • extract method работает только как extract function,
        • выделение интерфейса
        • выделение поля
        • здорово было бы иметь возможность менять сигнатуру как реализации, так и соответствующего интерфейса
        • перемещение типа в другой пакет
        • разбиение файла с несколькими типами на отдельные файлы по типам


  1. PsyHaSTe
    01.12.2017 13:09

    Планируется ли какой-нибудь RustLand/Rusty/...? А то у них отличный языковой сервер, а поддержки со стороны IDE нормальной ни одной, все через пень-колоду, и полтора плагина — вся доступная инфраструктура.


    1. DarkEld3r
      01.12.2017 14:11
      +1

      Подозреваю, что в курсе, но: https://intellij-rust.github.io/
      Официально разрабатывается людьми из JetBrains.


      Я бы с удовольствием купил, если была бы коммерческая версия. Пока что приходится довольствоваться связкой CLion + IntelliJ Rust и мириться с CMake неудобствами .


  1. evnuh
    01.12.2017 15:20

    Как у GoLand с симлинками?
    У меня все workspaсе-ы лежат в GOPATH, но открываю я их из симлинков в других местах. Конечно у них у каждого свой vendor/ внутри. Будет работать автодополнение кода? И даже для вендорных пакетов?
    Используете ли вы gotype для автодополнения? И если да, то значит автодополнение будет работать только после go install?


    1. andreycheptsov Автор
      01.12.2017 18:16

      Как правило все должно работать. Однако это не рекомендуемый способ. Лучше избегать, если это возможно.
      gotype не используется. go install не требуется.


    1. WebProd
      02.12.2017 15:25

      все работает, но папку вендор тоже в импорты в Preferences надо вносить.


  1. vscrub
    01.12.2017 18:15

    А в чём отличие между GoLand и плагином в IDEA Ultimate?


    1. andreycheptsov Автор
      01.12.2017 18:15

      Практически ни в чем. В GoLand нет того, что есть в Ultimate.


      1. Psy_Nejumi303
        02.12.2017 01:50

        т.е. лучше пользоваться плагином в Idea?


      1. vscrub
        02.12.2017 04:26

        А для чего тогда отдельный продукт? Или плагин перестанет развиваться?


        1. VolCh
          02.12.2017 17:31

          Большинство продуктов JetBrains — это общая оболочка и набор языковых плагинов. В IDEA Ultimate можно установить любой плагин, в других IDE (PhpStorm, RubyMine, PyCharm и др., теперь и GoLand) только один "главный" плагин предустановлен, а другие устанавливать нельзя. Смысл в том, что для одного языка IDE стоит дешевле, а если хочешь полноценной поддержки нескольких языков, то покупай или несколько IDE, или IDEA Ultimate


          1. Psy_Nejumi303
            02.12.2017 18:47

            Тогда получается, что проще купить одну Idea и поставить нужные плагины и это будет дешевле, чем брать несколько разных IDE для разных языков или весь пак, например.


            1. VolCh
              03.12.2017 00:14

              Idea стоит как 2,5 "обычных" IDE, а весь пак (кажется включая windows-продукты) как 3,5


          1. vscrub
            03.12.2017 15:00

            Понятно. То-есть в Ultimate я могу установить все, кроме связанного с C#?


            1. VolCh
              03.12.2017 16:43

              Да. По крайней мере об ограничениях не слышал за много лет.


  1. pawlo16
    01.12.2017 19:36

    Поздравляю разработчиков, выпустивших продукт сверх высокого качества, экономящий силы, нервы и время людей.
    Спасибо, JetBrains!