Обновить
57
Евгений Захаров@nerumb

Разработчик

29
Подписчики
Отправить сообщение
аннотации Jackson некорректно работают с Kotlin и необходимо дополнительно подключать отдельный jackson-module-kotlin модуль для совместимости

Можно и без jackson-module-kotlin, только тогда чисто Kotlin специфичные вещи работать не будут, что вполне логично.
… хорошо подумайте о том, стоит ли писать общие части на Kotlin.

Вы серьезно? Основное, чем вы аргументируете свое заключение, это internal. Который и не так часто используется.
Или можно еще попробовать Kotlin.
А можете скинуть ссылку на его выступление?
В Kotlin корутины безстековые. На счет асимметричности не могу дать точного ответа, можно ли их так назвать.
Можете посмотреть подробнее в какой байткод они компилируются в этом посте
Чаще всего coroutines называют корутинами. Например сами JetBrains тут. Также, если посмотреть выступления того же Андрея Бреслава, то он тоже так их называет.
Вообще JavaScript может в многопоточность :)
did-you-know-you-can-multithread-in-javascript
Concurrent != Multithreaded != Asynchronous

Да, это не то же самое.

Не то же самое что

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

Если перевести все один к одному то текст получится тяжелый.
Нас накололи, никаких преимуществ по скорости ленивость не дает...

Для больших коллекций при большом количестве chain преобразований думаю ленивый подход лучше себя покажет
Нет, планов писать подобный пост про Scala у меня нет =)

Сама Scala уже давно появилась, если поискать то наверняка будет полно уже написанных постов. Как например этот пост.
Спасибо, добавил
Да, спасибо, исправил. Была опечатка, должно быть mask вместо var3.
Как это сделать в Intellij Idea не знаю (хотя можно по идее плагином попробовать).
А вообще такую подсветку можно сделать в Sublime Text, и в нем открывать файл, полученный с помощью javap.
Плагин для подсветки синтаксиса.
Вам бы пообщаться в живую с Андреем Бреславым, ну или посмотреть его выступления… зарядиться Kotlin'ом…

А по поводу этой статьи, она мягко говоря не очень удачная, вместе с картинкой сверху. Больше смахивает на троллинг перехода на Kotlin.

В Kotlin есть одно неоспоримое преимущество, с ним будет больше ежедневного «фана» (original: fun) чем в других языках =)
Ну на самом деле они у себя его вовсю используют. Код на Kotlin в продакшене начал использоваться еще с начала его создания (вроде 2011) и у них же проходил боевую обкатку. Сейчас полностью на Kotlin написан сервис авторизации. В Rider фронтенд также полностью написан на Kotlin. Как минимум еще тесты пишутся также на Kotlin. В своем новом проекте они также используют Kotlin.

Сам язык постепенно проникает в их проекты. Нет смысла все сразу переписывать на Kotlin, они для того и делали язык с осознанием того, чтобы он прекрасно дружил с большой кодовой базой на Java.
Ну я больше про Java, Scala, Kotlin… В Rust да, это немного другое.
Если вы в таких местах используете Option, то у вас будет либо Some с объектом, либо None. В случае None вы так же теряете информацию о том что пошло не так. (в таких случае целесообразней использовать другой механизм, может тот же Either)

Там же где Option подходит, он заменяется успешно на nullable тип. (не везде, да бывают места где лучше оставить Option, но все же в большинстве случаев его можно заменить)
Как минимум сервис авторизации полностью написан на Kotlin. На счет остальных продуктов может кто из JetBrains скажет точнее.
Да и, в принципе, тот же монадический синтаксис можно использовать и в Kotlin, где нужно.
Но теряется возможность использовать монадический синтаксис и унифицированный код, работающий с разными типами коллекций

Просто один подход заменяется на другой. Да и для nullable типов в Kotlin есть специальные расширения для коллекций (типа filterNonNull и т.п.)
Да и я бы не сказал, что большое количество '?' делает код сильно проще.

Спорное утверждение, кому что ближе =)
Из своего опыта могу сказать что мне подход Kotlin ближе. К примеру код на Scala: fun1().flatMap( _.fun2).flatMap( _.fun3) заменяется на fun1()?.fun2()?.fun3()

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Зарегистрирован
Активность