Обновить

Комментарии 20

НЛО прилетело и опубликовало эту надпись здесь

val и var - это 2 способа обьявить переменную. Для Kotlin val - это final переменная, которая не может быть изменяемая. Ее можно только инициализировать и использовать.

На практике - это структура довольно удобная может быть. К примеру если хотите создать какую-то модель данных или список моделей в одной переменной, которая по логике не должна изменяться ее лучше инициализировать через VAL, нежели VAR.

Спасибо большое за комментарий!)

НЛО прилетело и опубликовало эту надпись здесь

Чето угарнул с комментариев. Анекдот вспомнился не очень приличный:

Затеял мужик капитальный ремонт и нанял под это дело двух рабочих - вроде нормальные, не бухают. Приезжает через две недели домой принимать работу, ходит - ну просто идеально всё сделано, не придерешься.

Заходит в туалет, а там унитаз к потолку привинчен!

Он, естественно: это чё за хуня?

А работяга ему: эй, погоди ругаться, вот смотри! - разбегается, отталкивается от стены, хватается за края унитаза руками, подтягивает к нему свою пятую точку и начинает испражнятся. Моча и кал, естественно, валятся сквозь ноги вниз, падают ему на спину, грудь и лицо, он отпускает руки, шлёпается в кучу собственных фекалий и говорит:

- Действительно, Вася, плохо сделали - надо подправить. 

А вообще, напишите в JetBrains - мол, ребят, сделали плохо, подправить надо

НЛО прилетело и опубликовало эту надпись здесь

И от авторов Свифта тогда тоже. Из официальной документации Swift:

Swift uses variables to store and refer to values by an identifying name. Swift also makes extensive use of variables whose values can't be changed. - "Свифт использует переменные, чтобы сохранять и ссылаться на значения по имени. Свифт также активно использует переменные, значения которых не могут быть изменены."

Может быть, если весь мир не прав, а вы правы, стоит задуматься?

"...переменная, которая не может быть изменяемая..." Если заменить словом "константа", то будет короче. :-)

PS "...Ну а покойники, бывшие люди, —

Смелые люди и нам не чета...."

Спасибо большое, учту в будущих постах! xD

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

НЛО прилетело и опубликовало эту надпись здесь

Поправьте, меня если я не прав, но котлин вроде был надстройкой над явой. И по этому любой исходник на котлине имеет ява представление. И выполняется всё это на ява-машине.

Т.е. котлин это такой синтаксический сахар для явы на максималках.

НЛО прилетело и опубликовало эту надпись здесь

Изначально Котлин так и задумывался, но сейчас это уже давно не так. Во-первых, существует Kotlin Native. Это технология, которая позволяет кастомным компилятором собирать исходники на Kotlin в нативные бинарники. Благодаря ей можно писать приложения для iOS, например. Можно конечно писать и для винды или линукса, как на C, но это не очень популярный способ)

Есть ещё Kotlin JS, транспилятор, который преобразует код на котлине в код на JS, и Kotlin WASM, который может исполнять код на котлине в браузере при помощи WebAssembly.

К сожалению, тут хочется поправить скорее автора статьи

Kotlin копилируется в байткод для Java-машины, но не сначала в Java, а затем в байткод.

Но в Java можно транспилировать, как и обратно. Но будет не идеально.

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

"Функция - это блок, который может выполнять одно конкретное действие, которое Вы укажите."

Во-первых, в Котлине, как и в Джаве, функции принято называть методами. Во-вторых, если функция действительно содержит одно конкретное действие в одну строку, то её можно записать сокращенным синтаксисом без фигурных скобок и return. В-третьих, количество действий в функциях не ограничено. Рекомендовано, чтобы они не превышали 20 строк и были объединены общей целью ведущей к конкретному результату. Чаще всего они представляют из себя блок кода, а не одну строку или действие в одну строку.

Поэтому советую дополнить блок по функциям в статье с дополнительными примерами. Другие дополнения уже дали выше.

метод - функция, в которой первым параметром является указатель на объект.

Во-первых, в Котлине, как и в Джаве, функции принято называть методами

Не помню как в java, но в kotlin можно объявлять просто функции на уровне пакета. Разница между методом и функцией в том, что метод принадлежит какому-либо классу и имеет доступ к его состоянию (помимо глобального если оно есть)

Орфографических и смысловых ошибок, у вас, конечно, хватает с пренебрежением))

А почему статья в хабе $mol находится?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации