Вся разработка на котлин, кроме андроид и ios.
Kotlin — статически типизированный, объектно-ориентированный язык программирования, работающий поверх Java Virtual Machine и разрабатываемый компанией JetBrains. Язык назван в честь российского острова Котлин в Финском заливе, на котором расположен город Кронштадт.
Маскот котлина Коди.
Что имеем:
+Современный синтаксис (реально удобный).
+Совместимость со всей jvm инфраструктурой.
+Возможность писать статический DSL прямо на самом языке.
+Дополнительные возможности котлина. (делегаты, функции, расширения класса, вариативность и т.д)
+Возможность нативной сборки, сборки в js, андроид и ios.
+Корутины
Для тех, кто переходит из процедурных языков программирования, объектно-ориентированный подход (ООП) может показаться полной ерундой.
В интернете часто приводят какие-то высосанные из пальца примеры с кошками, собаками и всякой абстракщиной. Но в реальной жизни все не так просто, и эти детсадовские примеры ни о чем не говорят. Когда ты только начинаешь изучать ООП, то сложно понять, зачем вообще городить эту огромную телегу с классами, наследованием, инкапсуляцией и прочими заморочками.
Поэтому лучший способ въехать в ООП - это сразу погрузиться в изучение какого-нибудь фреймворка. Когда ты видишь, как все это применяется на практике, то сразу начинаешь понимать суть.
Почему следует изучить java перед котлин, а не сразу изучать котлин:
1.Java основа: Без знания java ты не будешь понимать, что происходит под капотом kotlin. Синтаксический сахар kotlin скрывает сложные операции, и ты можешь понять конечный результат, но не механизм его достижения. Это как нажимать кнопку на чайнике и видеть, что вода нагревается, но не знать, почему и как это происходит. Лучше всего понять что под сахаром это в intellij перейти tools -> kotlin -> show kotlin bytecode -> decompile.
2.Код на Java: Большинство библиотек написано на java. Без знания java ты не сможешь понять их код и, соответственно, эффективно использовать или модифицировать их в своих проектах на Kotlin.
3.Может быть что где-то будут куски кода на java в проекте.
Антивирус в windows также замедляет компиляцию, так что отключите, добавьте в исключения папку или же перейдите на gnu/linux, macOS:
https://intellij-support.jetbrains.com/hc/en-us/articles/360006298560-Antivirus-Impact-on-Build-Speed
Попробовать котлин -> https://try.kotlinlang.org/
IDE. IntelliJ IDEA Community Edition -> https://www.jetbrains.com/idea/download/
Документация котлин -> https://kotlinlang.org/docs/home.html
Перевод документации -> https://kotlinlang.ru/docs/kotlin-doc.html
Скачать Kodee asset ->
https://kotlinlang.org/docs/kotlin-brand-assets.html#kotlin-user-group-brand-assets
Предыдущий тред: >>3247263 (OP)
Kotlin — статически типизированный, объектно-ориентированный язык программирования, работающий поверх Java Virtual Machine и разрабатываемый компанией JetBrains. Язык назван в честь российского острова Котлин в Финском заливе, на котором расположен город Кронштадт.
Маскот котлина Коди.
Что имеем:
+Современный синтаксис (реально удобный).
+Совместимость со всей jvm инфраструктурой.
+Возможность писать статический DSL прямо на самом языке.
+Дополнительные возможности котлина. (делегаты, функции, расширения класса, вариативность и т.д)
+Возможность нативной сборки, сборки в js, андроид и ios.
+Корутины
Для тех, кто переходит из процедурных языков программирования, объектно-ориентированный подход (ООП) может показаться полной ерундой.
В интернете часто приводят какие-то высосанные из пальца примеры с кошками, собаками и всякой абстракщиной. Но в реальной жизни все не так просто, и эти детсадовские примеры ни о чем не говорят. Когда ты только начинаешь изучать ООП, то сложно понять, зачем вообще городить эту огромную телегу с классами, наследованием, инкапсуляцией и прочими заморочками.
Поэтому лучший способ въехать в ООП - это сразу погрузиться в изучение какого-нибудь фреймворка. Когда ты видишь, как все это применяется на практике, то сразу начинаешь понимать суть.
Почему следует изучить java перед котлин, а не сразу изучать котлин:
1.Java основа: Без знания java ты не будешь понимать, что происходит под капотом kotlin. Синтаксический сахар kotlin скрывает сложные операции, и ты можешь понять конечный результат, но не механизм его достижения. Это как нажимать кнопку на чайнике и видеть, что вода нагревается, но не знать, почему и как это происходит. Лучше всего понять что под сахаром это в intellij перейти tools -> kotlin -> show kotlin bytecode -> decompile.
2.Код на Java: Большинство библиотек написано на java. Без знания java ты не сможешь понять их код и, соответственно, эффективно использовать или модифицировать их в своих проектах на Kotlin.
3.Может быть что где-то будут куски кода на java в проекте.
Антивирус в windows также замедляет компиляцию, так что отключите, добавьте в исключения папку или же перейдите на gnu/linux, macOS:
https://intellij-support.jetbrains.com/hc/en-us/articles/360006298560-Antivirus-Impact-on-Build-Speed
Попробовать котлин -> https://try.kotlinlang.org/
IDE. IntelliJ IDEA Community Edition -> https://www.jetbrains.com/idea/download/
Документация котлин -> https://kotlinlang.org/docs/home.html
Перевод документации -> https://kotlinlang.ru/docs/kotlin-doc.html
Скачать Kodee asset ->
https://kotlinlang.org/docs/kotlin-brand-assets.html#kotlin-user-group-brand-assets
Предыдущий тред: >>3247263 (OP)
>>21415 (OP)
Зачем оставил шизу про ООП?
Зачем оставил шизу про ООП?
>>21500
Терпи
Терпи
>>21415 (OP)
fun fail1(message: String): Nothing {
throw IllegalArgumentException(message)
}
Такого рода функции для чего-то нужны? Они должны присутствовать в программе на котлине?
fun fail1(message: String): Nothing {
throw IllegalArgumentException(message)
}
Такого рода функции для чего-то нужны? Они должны присутствовать в программе на котлине?
>>26941
Чтобы бросить исключение. Nothing указывает на то, что ожидается, что функция завершиться раньше чем будет выполнена. Например из-за throw exception.
Если у тебя есть логика, которой такое нужно, то да. В моей 5 летней практики пока ни разу не пригодилось.
> Такого рода функции для чего-то нужны?
Чтобы бросить исключение. Nothing указывает на то, что ожидается, что функция завершиться раньше чем будет выполнена. Например из-за throw exception.
> Они должны присутствовать в программе на котлине?
Если у тебя есть логика, которой такое нужно, то да. В моей 5 летней практики пока ни разу не пригодилось.
>>27037
просто я раньше писал что-то подобное, но делал проще если встречается что-то неправильное то пишу сообщение во второй канал
write(2, message, strlen(message));
exit(2);
>пока ни разу не пригодилось
просто я раньше писал что-то подобное, но делал проще если встречается что-то неправильное то пишу сообщение во второй канал
write(2, message, strlen(message));
exit(2);
>>27073
Не уверен, что ты правильно понял значение функции возвращающей Nothing. В ней не предполагается никакого альтернативного выполнения кроме как ошибки. То есть это не то, что в функции вычисляющей 2+2 произошла ошибка. Это скорее то, что "нам нужно закрыть все ресурсы перед тем как бросить исключение и мы вызываем функцию закрывающую ресурсы и бросаем внутри неё исключение". Вот такая функция должна возвращать Nothing.
Не уверен, что ты правильно понял значение функции возвращающей Nothing. В ней не предполагается никакого альтернативного выполнения кроме как ошибки. То есть это не то, что в функции вычисляющей 2+2 произошла ошибка. Это скорее то, что "нам нужно закрыть все ресурсы перед тем как бросить исключение и мы вызываем функцию закрывающую ресурсы и бросаем внутри неё исключение". Вот такая функция должна возвращать Nothing.
РЕШИЛ НАПИСАТЬ ПРИЛОЖЕНИЕ НА KMP
@
ПИШЕШЬ И ДУМАЕШЬ КАКОЕ НЕУДОБНОЕ ГУМНО
@
ГОВОРИШЬ ОБ ЭТОМ КОЛЛЕГЕ
@
КОЛЛЕГА НЕ ПОНИМАЕТ ПОЛОВИНУ ТОГО, ЧТО ТЫ ЕМУ РАССКАЗЫВАЕШЬ
@
"А ТЫ ЧТО НЕ НА МАКЕ СИДИШЬ? ТОГДА ПОНЯТНО У НИХ ПЛАГИН KMP ТОЛЬКО ДЛЯ МАКОСИ"
@
ЧЕКАЕШЬ ЭТУ ИНФОРМАЦИЮ
@
ОХУЕВАЕШЬ ОТ ТОГО, ЧТО ЭТО ПРАВДА
@
ПИШЕШЬ И ДУМАЕШЬ КАКОЕ НЕУДОБНОЕ ГУМНО
@
ГОВОРИШЬ ОБ ЭТОМ КОЛЛЕГЕ
@
КОЛЛЕГА НЕ ПОНИМАЕТ ПОЛОВИНУ ТОГО, ЧТО ТЫ ЕМУ РАССКАЗЫВАЕШЬ
@
"А ТЫ ЧТО НЕ НА МАКЕ СИДИШЬ? ТОГДА ПОНЯТНО У НИХ ПЛАГИН KMP ТОЛЬКО ДЛЯ МАКОСИ"
@
ЧЕКАЕШЬ ЭТУ ИНФОРМАЦИЮ
@
ОХУЕВАЕШЬ ОТ ТОГО, ЧТО ЭТО ПРАВДА
>>21415 (OP)
Жаль, что за пределами Андроида Котлин никому не интересен.
Жаль, что за пределами Андроида Котлин никому не интересен.
>>37815
У нас бэк на нем написан. Знакомый на KMP запилил iOS приложение
У нас бэк на нем написан. Знакомый на KMP запилил iOS приложение
>>37815
Он и на Андроиде никому не интересен, кроме Гугли. Этакий Раст но без педиков но с русофобами.
Он и на Андроиде никому не интересен, кроме Гугли. Этакий Раст но без педиков но с русофобами.