169 похожих чатов

Поясню своё решение, если кому-то интересно. Во-первых, никто не считает Kotlin

плохим языком и тут вопрос скорее в практичности по сравнению с java для использования на сервере.
Во-вторых, как я понял из ответов, проблемы с интеропом всё же могут возникать, но уже в меньших количествах, чем раньше и это круто. Проблемы закрываются дополнительными плагинами, чаще всего (не знаю пока что на сколько это недостаток, но это определённо создаёт некий слой магии).
В-третьих Java догоняет по фичам:
https://www.youtube.com/watch?v=nKJbDYRsO0s&feature=youtu.be&t=3372
LVTI (var) since java 10
records
switch expressions (in jdk 13)
Pattern matching
sealed classes
Fibers (coroutines will be an android thingy after this)
Value classs/Inline classes (with nullable types) which offers 50x memeory reduction and 1000x less allocation.
В-четвёртых ПОКА ЧТО использующих Kotlin на бэке не так много. (Но число увеличивается)

Поэтому, я взгляну на Kotlin через какое-то время, когда будут более выражены преимущества от использования котлина вместо java на бэкенде.
ЭТО ВСЕГО ЛИШЬ МОЁ МНЕНИЕ, Я МОГУ ОШИБАТЬСЯ. Просто пытаюсь без эмоций оценить ситуацию, прежде чем углубляться в новый инструмент.

2 ответов

12 просмотров

3 пункт, файберы и патерн матчинг далеки до релиза пока, как и value class

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

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта