Задать вопрос
@inzhrr

Какие знаниями java нужно обладать чтобы переходить на kotlin?

Хочу начать писать приложения под Android и на данный момент активно учу java, планирую перейти на kotlin, т.к. прочитав в интернете понял что сейчас он более актуален. Знаниями каких тем в java нужно обладать чтобы можно было начать изучать kotlin?
  • Вопрос задан
  • 265 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
xez
@xez
TL Junior Roo
Разрешаю изучать Котлин с любым уровнем знания джавы, в том числе и без знания джавы.
Ответ написан
Комментировать
402d
@402d
начинал с бейсика на УКНЦ в 1988
Знаю яву и не фига не понимаю в котлин коде.
Смотришь в код и ничего знакомого
data class CoverFront
constructor(
    /** May contain any keyword from [CoverType]. */
    var coverType: String? = null,
    /** May contain any keyword from [Media] or a name. */
    var media: KeywordOrName? = null,
    var mediaCol: MediaCol? = null,
) : AttributeCollection {

    /** Construct an empty [CoverFront]. */
    constructor() : this(null)

    /** Produce an attribute list from members. */
    override val attributes: List<Attribute<*>>
        get() = listOfNotNull(
            coverType?.let { CoverFront.coverType.of(it) },
            media?.let { CoverFront.media.of(it) },
            mediaCol?.let { CoverFront.mediaCol.of(it) },
        )

    /** Defines types for each member of [CoverFront]. */
    companion object : AttributeCollection.Converter<CoverFront> {
        override fun convert(attributes: List<Attribute<*>>): CoverFront =
            CoverFront(
                extractOne(attributes, coverType),
                extractOne(attributes, media),
                extractOne(attributes, mediaCol),
            )
        override val cls = CoverFront::class.java
        @Deprecated("Remove this symbol")
        @JvmField val Types = this
        @JvmField val coverType = KeywordType("cover-type")
        @JvmField val media = KeywordOrNameType("media")
        @JvmField val mediaCol = AttributeCollection.Type("media-col", MediaCol)
    }
    override fun toString() = "CoverFront(${attributes.joinToString()})"
}

Например, что тут похоже на яву ?
Только дополнительные костыли для того, чтобы этот класс можно было использовать в java части приложения.

Знание java & kotlin нужно для написания универсального кода. А так только мешает. Синтаксический сахар разный. Общих моментов меньше чем того что различается.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Brief Москва
от 150 000 до 210 000 ₽
СМК-РК Москва
от 200 000 до 250 000 ₽
Wanted. Санкт-Петербург
До 150 000 ₽