Введение в разработку приложений Kotlin для Android

Автор: John Stephens
Дата создания: 24 Январь 2021
Дата обновления: 4 Июль 2024
Anonim
Уроки  по Kotlin на Android Studio 2020/Урок 1
Видео: Уроки по Kotlin на Android Studio 2020/Урок 1

Содержание


Kotlin - это статически типизированный язык программирования от JetBrains. Он полностью «совместим» с Java (это означает, что вы можете использовать Java-фреймворки и даже смешивать команды из обоих в вашем коде) и не имеет ограничений. Разработчики Android уже некоторое время используют Kotlin через плагин, и некоторые популярные приложения в Play Store (например, Basecamp) были созданы исключительно с использованием этого языка. Однако теперь, начиная с Android Studio 3.0, он будет встроен и поддерживается "из коробки".

Kotlin позволяет нам удалить значительное количество шаблонов

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

Например, Kotlin удаляет пустые ссылки и не проверяет исключения - оба могут избавить разработчиков от головной боли. Как вы увидите, различные функции Kotlin для Android также позволяют нам удалять значительные объемы стандартного кода, что приводит к более компактным, более читаемым программам. Как правило, это более современный язык, и если вы еще не укоренились в Java и не хотите придерживаться «самого официального» метода, то, возможно, стоит задуматься. Для тех, кто только начинает, Kotlin может представлять более щадящую кривую обучения.


Читать дальше:Kotlin против Java: ключевые различия между официально поддерживаемыми языками Android

Итак, для тех, кто заинтересован в принятии Kotlin в свой рабочий процесс, как можно застрять?

Начало настройки

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

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


Откройте MainActivity.kt (kt является расширением Kotlin), и вы сразу увидите, что есть некоторые ключевые отличия в том, как все написано и выложено.

Теперь вы готовы начать разработку с Kotlin для Android!

Обратите внимание, что обычно хорошей идеей является создание нового каталога для ваших файлов Kotlin или полная замена java-папки, если вы используете только Kotlin, начиная с этого момента. Вы можете создавать новые файлы Kotlin, щелкнув правой кнопкой мыши целевой каталог и затем выбрав New> Kotlin Активность.

Здравствуйте, Kotlin для Android: некоторые основные синтаксис и различия

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

Что об этомвесело команда? На самом деле это сокращение от «функция» (не так весело), ​​поэтому вместо написания общественная пустота ты сейчас напишешь весело, Это тогда предоставляет нашему классу публичную функцию, которую мы можем вызвать из других классов. Аргументы указываются в скобках после имени функции. Для этого вам нужно знать, как определять переменные, что немного отличается. Чтобы создать строку, вы можете написать:

var text: String = «Hello»

Хотя на самом деле Kotlin обычно достаточно умен, чтобы идентифицировать тип переменной сам по себе, как Python, так что вы можете просто написать:

var text = «Hello»

Чтобы создать строку, или:

var num = 3

Чтобы создать целое число. Вот как бы вы создали изменяемую (изменяемую) переменную. вал используется для создания констант. Поэтому при создании функций с аргументами это то, что вы увидите в скобках. И эти переменные могут иметь значения по умолчанию, что также удобно. Таким образом, вы можете увидеть что-то вроде этого:

fun SayHello (var userName: String = «User») {textView.setText («Hello, $ userName!»)}

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

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

Истинная сила Kotlin: помогая печатать меньше

В большинстве случаев код будет выглядеть немного проще и короче в Kotlin для Android по сравнению с Java. Рассмотрим следующий пример добавления onClickListener в FAB. Вот как бы вы сделали это на Java:

FloatingActionButton fab = (FloatingActionButton) findViewById (R.id.fab); fab.setOnClickListener (new View.OnClickListener () {@Override public void onClick (View view) {...}});

И это то же самое в Котлине:

val fab = findViewById (R.id.fab) как FloatingActionButton fab.setOnClickListener {...}

Это просто намного проще и понятнее, и это делает код более читабельным на ходу. Как я уже сказал: меньше шаблонов. И на самом деле, это намного глубже, чем это. Разработчики Kotlin могут избавиться от необходимости писать findViewByID опять таки! Для этого вам нужно применить плагин.

Вы делаете это на уровне модуля build.gradle файл, добавив строку:

применить плагин: «kotlin-android-extensions»

Нажмите «Синхронизировать», и вы сможете импортировать ссылки на ваши представления прямо вверху кода, например:

импорт kotlinx.android.synthetic.main..

Сделав это, вы сможете получить прямой доступ к представлению, не используя его идентификатор. Это делает жизнь намного проще и может спасти вас от написания много произвольного кода.

Добавьте лямбда-выражения, и ваш код действительно станет очень кратким. Лямбда-выражения - это анонимные функции, которые позволяют вам еще больше сократить количество записей, помещая все в одну строку. Оператор заключен в фигурные скобки, содержащие параметры, за которыми следует символ стрелки, а затем тело. Например, onClickListenerможет выглядеть так:

button.setOnClickListener ({view -> toast ("Clicked!")})

И если функции требуется другая функция в качестве последнего параметра, вы можете передать ее за пределы скобок:

button.setOnClickListener () {toast ("Clicked!")}

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

Читать дальше: Котлин сопрограммы и их роль в асинхронном программировании для Android

Идти вперед

Вот и все: это Kotlin для Android в двух словах. Это правильно для вас? В конечном счете, это сводится к личным предпочтениям и вашим чувствам, когда дело доходит до кодирования. Лично я фанат обтекаемой природы Kotlin и способа, которым он удаляет много ненужных строк кода. Надеемся, что этот пост дал вам достаточно учебника для начинающих, чтобы вы могли составить собственное мнение и продолжить свое образование, если решите, что он представляет интерес. Если вы хотите немного поиграть, вы можете попробовать это в своем браузере здесь.

Что бы вы ни решили, иметь больше вариантов - это всегда хорошо!

AT & T и Verizon уже некоторое время ведут холодную войну, борясь за первое место в США. Verizon может иметь немного более широкий выбор премиальных смартфонов, но AT & T имеет преимущество, к...

LG tylo 4 Plu - это телефон для людей, которые хотят не только по-настоящему большой дисплей со встроенным стилусом, но и не стоят его за руку и ногу, как телефоны из серии amung Galaxy Note. Этот тел...

Увлекательно