
Комментарии 10
Kotlin уже давно стал основным языком программирования на Android.
В этом предложении очень много ложных утверждений.
Пару лет — это уже давно?
Android SDK и AndroidX уже полностью переписаны на Kotlin?
У Kotlin уже своя VM?
Пару лет — это уже давно?
Ну google объявили котлин основным языком разработки под андроид в 2017-ом году. До этого он уже активно использовался. Мне кажется, что более 4 лет в it сфере, можно назвать словом 'давно', учитывая насколько быстро все меняется. Но естественно это субъективная оценка.
Android SDK и AndroidX уже полностью переписаны на Kotlin?
Уже ответили выше, мне также кажется, что нет никакой необходимости в переписывании всего на котлин, для того, чтобы он стал основным в моем понимании.
У Kotlin уже своя VM?
Если честно тоже не понял связи с VM. Думаю котлин отлично работает и с JVM.
Но спасибо за коментарий, постараюсь в дальнейшем не использовать неопределености со временем :)
Спасибо за статью, узнал новые нюансы!
Java не единственный язык, который я более-менее знаю. Но вот на Kotlin смотрю и не могу отделаться от мысли, что язык стал просто монструозным.
lateinit, val, var, fun, Unit… Такое ощущение, что скоро добавятся служебные слова mega, over, awesome, great, amazing, just, keep…Код на Котлине приносит приятный синтаксический сахар: автоматический вывод типов, удобное делегировние, дата класы, функции расширения и другое. Но он так же легко читаемый как и java, если поработать с ним несколько месяцев.
Там уже куча новых слов типа crossinline и еще говна всякого. Java проект почти никогда не требует гайда и кодстайла на мелких проектах. На котлине любой проектик типа андроидного приложеница немедленно стремится превратиться в кашу и без палки и такой-то матери нежизнеспособен. Я пока на котлине около 50к строк написал может не преисполнился, java придумывали инженеры, котлин это попытка java превратить в js от вебмакак, которые не понимают, что намного важнее то, чего нельзя, чем то, что можно. И крутой маркетинг конечно, тут просто мое почтение. Причем почему-то аппологеты котлин сравнивают его с java 6...даже в книжках по котлин :) Потому как все хоть сколько то полезное от лямбд уже есть с 8, а на дворе 17.
val buttonLambda = Button { listener.onClick() }
val buttonReference = Button(listener::onClick)
Лямбда может содержать множество операторов, не только вызов onCkick. Сопоставимым была бы передача функции с вызовом listener.onClick() в теле, например, через параметр, тогда и значение параметра бы считалось в момент вызова.
Kotlin. Лямбда vs Ссылка на функцию