Kotlin для чайников android

Как использовать Kotlin в ваших проектах Android

Введение

Kotlin, язык программирования с открытым исходным кодом, разработанный JetBrains, становится все более популярным среди разработчиков Java. Он часто рекламируется как преемник Java. По сравнению с Java, он предлагает более богатый опыт разработки, потому что он более современный, выразительный и лаконичный.

Если вы ищете альтернативный язык программирования для разработки Android, вы должны попробовать Kotlin. Его можно легко использовать вместо или в сочетании с Java в ваших проектах Android.

В этом уроке я покажу вам, как использовать плагины Kotlin и Kotlin в ваших проектах Android Studio.

Предпосылки

Чтобы следовать за мной, вам нужно:

  • последняя версия Android Studio
  • базовое понимание синтаксиса Kotlin

Если вы не знакомы с языком программирования Kotlin, я рекомендую прочитать раздел «Начало работы» секции Kotlin, чтобы познакомиться с языком.

1. Установка плагинов Kotlin

В меню быстрого запуска Android Studio выберите Настройка> Плагины.

На следующем экране нажмите Установить плагин JetBrains.

Выберите Kotlin Extensions для Android из списка и нажмите Установить плагин справа.

Поскольку плагин зависит от плагина Kotlin, вас попросят установить оба. Нажмите Да, чтобы начать установку.

По завершении установки перезапустите Android Studio, чтобы активировать плагины.

2. Создание Kotlin Activity

В Android Studio щелкните правой кнопкой мыши имя вашего пакета и выберите Создать> Файл Kotlin.

В появившемся диалоговом окне введите имя нового Activity и выберите Класс в раскрывающемся списке. Я назвал свой класс MainActivity.

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

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

Чтобы настроить проект для поддержки Kotlin, плагин Kotlin вносит несколько изменений в файл build.gradle. Примените эти изменения, нажав кнопку Синхронизировать сейчас, как показано ниже.

На этом этапе конфигурация вашего проекта завершена. Вернитесь к классу Kotlin, который вы создали минуту назад, чтобы начать писать код на Kotlin.

Читайте также:  Андроид тормозит или зависает что делать

3. Использование Kotlin

Чтобы упростить пример, я покажу вам, как создать Activity с помощью одного TextView , который отображает String .

Убедитесь, что ваш класс является подклассом Activity и переопределяет его метод onCreate . Конечно, вы должны сделать это в Kotlin. Если вы новичок в Kotlin, я предлагаю вам использовать функциональность генерации кода Android Studio, нажав Control + O, чтобы получить сигнатуры метода справа.

Теперь ваш класс должен выглядеть следующим образом:

Создайте экземпляр TextView как локальную переменную assign-once, используя ключевое слово val .

Вызовите ее метод setText , чтобы установить String , который хотите отобразить, и затем вызовите setContentView для отображения текстового вида.

Как и для Java- Activity , вам нужно объявить свою Kotlin- Activity в AndroidManifest.xml вашего приложения, чтобы она была распознана системой Android. Если это единственный Activity в вашем проекте, ваш файл манифеста должен выглядеть так:

Теперь вы можете скомпилировать и запустить приложение на своем Android-устройстве или эмуляторе. Хотя компилятор Kotlin немного медленнее, чем у Java, вы вряд ли увидите существенные изменения во времени сборки вашего проекта.

4. Использование Kotlin Android Extensions

Плагин Kotlin Android Extensions позволяет обрабатывать виджеты, которые вы определяете в XML-макете Activity , как если бы они были свойствами этой Activity . Другими словами, если вы используете этот плагин, вам никогда не придется вызывать findViewById . Эти свойства называются синтетическими свойствами.

Чтобы использовать эту функцию в своем приложении, вам нужно добавить org.jetbrains.kotlin: kotlin-android-extensions как зависимость скрипта сборки в модуле build.gradle вашего приложения, как показано ниже. Не забудьте нажать кнопку Синхронизировать сейчас, чтобы синхронизировать ваш проект.

Теперь создадим Activity , аналогичную той, которую мы создали на предыдущем шаге, но используем XML-макет для определения TextView . Создайте новый XML-файл макета с именем another_activity.xml. В XML-файле макета укажите TextView с id myMessage.

Создайте еще один класс Kotlin, AnotherActivity, который расширяет Activity и переопределяет его метод onCreate . Это должно выглядеть так:

Вызовите setContentView в методе onCreate для использования XML-макета, который вы только что создали, в качестве макета этого Activity .

Теперь вместо вызова findViewById для получения ссылки на TextView вы можете импортировать его с помощью следующего фрагмента кода:

Если в вашем макете было больше виджетов, вы можете импортировать все из них, используя следующий фрагмент кода:

Читайте также:  Фортнайт для слабых телефонов android

Теперь вы можете получить доступ к своему TextView , используя свой id , как если бы это было свойство класса Activity . Например, чтобы изменить текст TextView, вы можете написать:

5. Преобразование классов Java в Kotlin

Вы можете использовать плагин Kotlin для преобразования существующих классов Java в классы Kotlin. Чтобы попробовать эту функцию, создайте новый класс Java со следующей реализацией. Это простая Activity , которая выводит сумму двух целых чисел.

Преобразуйте класс Java в класс Kotlin, нажав Control + Alt + Shift + J или в меню выберите Код > Преобразовать файл Java в файл Kotlin.

После преобразования ваш класс будет выглядеть следующим образом:

Вы также заметите, что расширение файла изменилось с .java на .kt.

Заключение

В этом уроке вы узнали, как использовать Kotlin в своих проектах Android после установки плагина Kotlin и плагина Android Kotlin для Android. Поскольку классы Kotlin и Java в значительной степени совместимы, если вы все еще изучаете Kotlin, лучше всего вводить его в свои проекты Android постепенно.

Чтобы узнать больше о Kotlin, я рекомендую просмотреть документацию Kotlin. Раздел Начало работы поможет вам быстро освоить этот новый язык.

Источник

Знакомство с Kotlin для Android за один день

Sep 18, 2018 · 5 min read

Имея за плечами опыт с Java, я понял, что синтаксис Kotlin похож на Java, но в то же время может сильно отличаться. Kotlin — очень мощный язык, в котором много синтаксического сахара, что может немного напрягать.

В этой статье мы рассмотрим необходимый минимум, который поможет начать работать с Kotlin. Давайте сразу к делу.

1. Переменные

Чтобы объявить переменную, используйте var.

Чтобы объявить константу, используйте val. val в Kotlin — это как final в Java.

Чтобы инициализировать переменную как null, используйте оператор “?”. Если оператор “?” не указан, то компилятор не позволит присвоить переменной значение null.

Использ у йте companion object для определения статической переменной.

Используйте lateInit для отложенной инициализации переменной.

2. Функции

Простая функция в Kotlin выглядит следующим образом:

Здесь функция getNumber() имеет область видимости public, не имеет параметров и возвращает Int.

Попробуем создать private функцию с несколькими параметрами.

Функция getStringLength() имеет область видимости private и два параметра, возвращает Int.

Как насчёт статической функции?

getOddLengthString() — статическая функция, которая принимает параметр и возвращает строку. Тип String указан с символом “?”. Это означает, что функция может возвращать значение NULL.

Читайте также:  Соединение с компьютером для андроид

3. Циклы for, while, when

В цикле for, в Kotlin, используется ключевое слово “in” для доступа к элементам коллекции.

Можно также получить доступ к индексам элементов в цикле for.

Цикл while в Kotlin такой же, как и в Java. Тут ничего нового 🙂

А вот оператор switch в Java был создан проще. Kotlin использует ключ слово when для переключения между условиями, и это гораздо более мощный и краткий способ.

4. Null Safety (Null безопасность)

В Java, чтобы избежать исключения NullPointerException, мы можем использовать блок “if”. Например:

Но в Kotlin мы можем пропустить блок “if” и переписать наш код следующим образом:

“?.”известен как оператор безопасного вызова, и приведённый выше пример показывает, что его можно использовать в цепочках. Это помогает нам писать чистый, простой код и в то же время избегать NPE.

В случае, если вы хотите обработать сценарий, где объект равен null, вы можете использовать “?:”. Этот оператор, называют — Elvis operator.

5. Классы (конструкторы, методы, наследования)

Ключевое слово “open” указывает, что класс может быть унаследован. Класс, который не является “open”, такой же, как класс final в Java. Простой пример класса в Kotlin выглядит так:

Ниже приведён более сложный пример класса и наследования в Kotlin:

Обратите внимание, что в наших классах нет методов getter и setter. Вместо этого мы обращаемся к свойствам объекта следующим образом:

6. Singleton (синглтоны)

Синглтоны в Kotlin реализуются с помощью ключевого слова “object”. Имея опыт с Java, использование “object” вместо “class”, кажется немного странным. Подробнее об этом можно прочитать в официальных документах Kotlin:

7. Интерфейсы

Базовый интерфейс в Kotlin выглядит следующим образом:

Наследование интерфейса довольно просто. Но передача интерфейса функции немного отличается. Посмотрите на этот пример:

8. Type Casts (приведение типов)

Чтобы проверить, является ли объект экземпляром определённого класса, мы используем операторы “is” и “!is”.

Чтобы предотвратить выбрасывание исключений, можно использовать оператор безопасного приведения “as?”, который возвращает null при сбое. Это называется safe typecast в Kotlin.

В этом случае при сбое приведения типов, возвращается значение null, что предотвращает выбрасывание исключений.

9. Обработка исключений

Выбрасывание и обработка исключений практически такие же, как и в Java.

Источник

Оцените статью