company_banner
9 ноября 2016 в 18:04

JetBrains Night в Москве. Видео. Kotlin как первый шаг к JVM

29 сентября в Москве прошла мини-конференция JetBrains Night: 7 часов разработчики из JetBrains рассказывали разработчикам из других компаний о том, что компания делает, зачем, и что будет делать дальше, а потом отвечали на вопросы, обсуждали общие проблемы и вообще делились опытом (т.е. слушали, как разработчики из других компаний рассказывают им о том, что они делают и почему им удобно или пока еще не очень удобно делать это с помощью того, что делает JetBrains).

На Хабре мы публикуем видео всех докладов, по одному на пост, чтобы можно было в комментариях обсудить то, что не успели обсудить на JetBrains Night, особенно с теми, кто не смог приехать лично.

Сегодня — видео доклада Дмитрия Жемерова, ведущего разработчика в команде Kotlin. Встречайте, Дмитрий Жемеров, Kotlin как первый шаг к JVM:

Автор: @philipto
JetBrains
рейтинг 243,25
Похожие публикации

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

  • –5
    Научите PyCarm нормально работать с pytest. Цены вам не будет!

    Что хотелось бы:
    — подхват fixture из `conftest.py`
    — подхват встроенных fixture
    — встроенные переменные типа `pytest_plugins, pytestmark`
    • 0
      https://youtrack.jetbrains.com/issues
  • –1

    А есть планы переделать/доделать maven plugin, чтобы он работал скажем как аналогичный от Eclipse для Groovy?

    • 0
      Можно, пожалуйста, конкретнее? «Как аналогичный» в каком отношении?
      • 0

        Да все очень просто на самом деле. Речь о совместной компиляции kotlin+java.


        Вот как работает groovy: используется штатный maven-compiler-plugin, тот самый, который компилирует java. Eclipse groovy компилятор (groovy-eclipse-compiler) это расширение к нему.


        Соответственно, в итоге никаких проблем с совместной компиляцией groovy+java нет, все работает из коробки. За зависимостями внутри проекта можно не следить — это забота компилятора.


        А теперь сравните это с тем, что нужно сделать, чтобы скомпилировать проект, содержащий kotlin и java:


        To compile mixed code applications Kotlin compiler should be invoked before Java compiler.

        Ну и сравните сложность настройки.


        Вот это вот все — довольно сильное ограничение.Я не хочу сказать, что собрать такой проект невозможно, но на сегодня это скажем так, далеко от идеала. Который, как мы видим на примере groovy, вполне возможен.

        • 0
          А зачем в случае котлина следить за зависимостями внутри проекта? Компилятор котлина отлично умеет читать исходный код на java, поэтому то, что нужно запускать его перед запуском javac, никак вас не ограничивает в том, как именно у вас зависят друг от друга классы на kotlin и на java.

          Сложность настройки — да, согласен, но это то, что нужно сделать один раз, причём не руками, а предоставить это IDE.
          • 0
            Пардон, но насчет «предоставить это IDE» я не понял. Вы вот про это, например?

            <configuration>
               <sourceDirs>
                                        <sourceDir>${project.basedir}/src/main/kotlin</sourceDir>
                                        <sourceDir>${project.basedir}/src/main/java</sourceDir>
               </sourceDirs>
            </configuration>
            

            или вот про это?

            <execution>
                                <id>default-compile</id>
                                <phase>none</phase>
            </execution>
            

            По-моему и то и другое отдать IDE не получится. Да, насчет один раз — тут вы правы, это не каждый день делается. Ну и в целом это не шоу стоппер, конечно же, но скажем так, некоторое неприятное неудобство, хотя надо сказать, по сравнению с первыми версиями плагина уже стало намного лучше.
            • +1
              Про «предоставить IDE» я имею в виду, что у нас есть экшн Tools | Kotlin | Configure Kotlin in Project, который автоматически вносит нужные изменения в ваши pom.xml.
              • 0
                Кстати, вот это вот: «Компилятор котлина отлично умеет читать исходный код на java, поэтому то, что нужно запускать его перед запуском javac, никак вас не ограничивает в том, как именно у вас зависят друг от друга классы на kotlin и на java.» на первый взгляд ниоткуда не следует. Т.е. открыв документацию на тот же maven plugin, я там этого не вижу. Было бы неплохо как-то отразить этот факт.
  • –2
    Сделайте уже мультиязычность и русификацию ваших продуктов наконец!
    Я конечно могу пользоваться и так, но на родном языке всё равно удобнее.
  • 0
    «Привет, Перл» :)
    Научите Перл компиляться в JVM и все остальное станет просто не нужно )))
    Синтаксического сахара в нём просто целая коробка рафинада )

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка