Introducere în Kotlin pentru Android
Publicat: 2018-06-28În lumea Android, sunt sigur că nu există nimeni care să nu fi auzit de Java. Un limbaj de programare puternic care poate construi aplicații care rulează pe aproape orice sistem de operare pe orice hardware. Cu toate acestea, de-a lungul anilor, au fost introduse o serie de noi limbaje de programare pentru a rula și pe mașina virtuală Java. Un astfel de limbaj, care face parte din ceea ce face Google, pentru a face dezvoltarea aplicației Android „mai bună” este Kotlin. Google și-a anunțat sprijinul pe scară largă pentru Kotlin la Google I/O 2017.
Sigur știm că Kotlin este pentru dezvoltatorii de aplicații și că le place! Dar de ce le place? Ce face Google să consolideze cât de important este Kotlin pentru dezvoltarea aplicațiilor din nou în 2018? Ce este mai exact?
Un limbaj de programare tip static care rulează pe JVM, Kotlin este un limbaj de programare și dezvoltare de la JetBrains. Kotlin este un limbaj modern, expresiv, sigur și puternic, care poate fi interoperabil cu limbile Android existente. Alte caracteristici includ:
1. Kotlin este pe deplin acceptat de Android Studio 3.0 și versiuni ulterioare.
2. Kotlin este un limbaj bazat pe JVM creat de „JetBrains”, echipa din spatele „Intellij”.
3. Intellij este baza pentru Android Studio.
4. Kotlin este un „limbaj orientat pe obiecte”
De ce Kotlin?
Ușoare:
Biblioteca Kotlin este destul de mică în comparație cu altele. Acest lucru este important deoarece limitele metodei Android care implică Proguard și Multidexing este întotdeauna o problemă de rezolvat. Toate aceste soluții vor adăuga complexități care pot consuma timp în timpul depanării. Kotlin adaugă mai puțin de 7000 de metode.
Foarte interoperabil:
Kotlin funcționează bine cu bibliotecile java. Echipa Kotlin vrea să continue să dezvolte proiecte curente care sunt scrise în java fără a fi nevoie să rescrie întregul cod. Deci Kotlin este un limbaj extrem de interoperabil.
Integrat cu Android Studio:
Kotlin este integrat cu Android Studio și Gradle. Este ușor să instalați Kotlin, deoarece necesită un plugin pentru IDE și unul pentru Gradle. Nu va fi dificil să porniți un proiect Android folosind Kotlin.
Gata cu NullPointerExceptions:
NullPointerException este una dintre cele mai frecvente cauze de blocare a aplicației în Android. Pentru a remedia această excepție și pentru a vă proteja codul, folosirea verificării nul de fiecare dată este o sarcină care necesită timp. Dar în Kotlin aceasta este o excepție, deoarece siguranța nulă este deja integrată.
Performanta:
Aplicația Kotlin rulează la fel de repede precum ar rula pe Java. Cu suportul Kotlin pentru funcțiile inline, folosind „lambda” aplicațiile rulează adesea și mai repede.
În Android Studio 3.0, puteți alege să creați activitatea în Kotlin. Cel mai simplu mod de a începe să utilizați kotlin este să convertiți automat Java în Kotlin. Puteți scrie în Java, apoi copiați și lipiți codul java în fișierul kotlin și acesta va sugera conversia.
O altă metodă ușoară de a converti fișierul Java în Kotlin:
Meniul Android Studio >> Cod >> Convertiți fișierul Java în fișierul Kotlin
Conversia va fi de acest tip:
Java:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity); } }
Kotlin:
class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity) } }
După configurarea Kotlin, actualizați fișierul build.gradle pentru aplicație și implementați cele prezentate mai jos:


În cele din urmă, sincronizați proiectul. Puteți face clic pe „Sincronizați acum”. Acest lucru funcționează exact la fel ca în Java. Puteți face o lansare a aplicației și o puteți semna în mod similar cu ceea ce facem noi pentru o aplicație Android în Java.
În cele din urmă, compilatorul Kotlin produce „byte-code”, fără nicio diferență în ceea ce privește aspectul aplicației în Android.
Acum, spuneți-ne puțin mai multe despre Sintaxa Kotlin
- Definirea pachetului:
package com.example Import java.util.* - Definirea variabilelor:
Int: Val a: Int = 3 // Immediate assignment Val b = 2 // “Int” type is Inferred Val c : Int // Type Required when no initializer is provided C = 3 // Deferred assignment - Şir:
val firstName: String = "Raj" val lastName = "xyz" // still compile val dateOfBirth = "24th April, 1990" dateOfBirth = "28th July, 2000" // cannot be changed var car = "Toyota Matrix" car = "Mercedes-Maybach" // can be changed
Diferența dintre „Val” și „Var”
Val : este un cuvânt cheie pe care primul este imuabil sau numai pentru citire (valoarea acestuia nu poate fi modificată)
Var : Este un cuvânt cheie care are tipul dedus de compilator, alocarea unei alte valori de alt tip nu va funcționa. Cu alte cuvinte, valoarea variabilei se poate schimba, dar tipul acesteia nu.
var age = 12 age = "12 years old" // Error: type mismatch val carName: String carName = "BMW Car" // will compile val carName = "Toyota", streetName = "Church street" // this won't compile // this will compile var carName = "Audi" var streetName = "Church street"
Exemple:
fun main(args: Array<String>) { val i = 10 println("i = $i") // prints "i = 10" } val accountBalance = 200 val bankMessage = "Your account balance is $accountBalance" // Your account balance is 200
Ne referim la o variabilă prin utilizarea unui caracter $ în fața numelui variabilei. Rețineți că dacă variabila nu este corectă sau nu există, codul nu se va compila. Puteți apela direct metode dintr-un șir interpolat; trebuie să adăugați acolade ${} pentru a-l înfășura.
val name = "Raj" val message = "The first letter in my name is ${name.first()}" // The first letter in my name is R
Funcții definitorii:
fun sum(a: Int, b: Int): Int { return a + b } fun main(args: Array<String>) { print("sum of 2 and 8 is ") println(sum(2, 8)) } // sum of 2 and 8 is 10
Funcție cu corp de expresie și tip de returnare dedus:
fun sum(a: Int, b: Int) = a + b fun main(args: Array<String>) { println("sum of 18 and 24 is ${sum(18, 24)}") } // sum of 18 and 24 is 42
Pentru buclă:
fun main(args: Array<String>) { val items = listOf("apple", "banana", "Mango") for (item in items) { println(item) } } // apple banana Mango
Utilizarea colecțiilor:
Iterating over a collection: fun main(args: Array<String>) { val items = listOf("apple", "banana", "mango") for (item in items) { println(item) } } Checking if a collection contains an object using “in” operator: fun main(args: Array<String>) { val items = setOf("apple", "banana", "mango") when { "orange" in items -> println("juicy") "apple" in items -> println("apple is fine") } } // apple is fine

Cum se creează o instanță a clasei:
val customer = Customer() // No New Keyword
Constructori:
O clasă în Kotlin poate avea un constructor primar și unul sau mai mulți constructori secundari. Constructorul primar face parte din antetul clasei: merge după numele clasei
class Person constructor(firstName: String) { }
Declararea proprietăților:
Clasa Kotlin are proprietăți. Acestea pot fi declarate ca mutabile, folosind cuvântul cheie „var” sau Numai citire folosind cuvântul cheie „val”.
De exemplu:
class Address { var name: String = “” var street: String = “” var city: String = “” }
Interfata:
Interfețele din Kotlin sunt foarte asemănătoare cu Java 8. Ele pot conține declarații de metode abstracte, precum și implementări de metode.
O interfață este definită folosind interfața de cuvinte cheie
interface MyInterface { fun bar() fun foo() { // optional body } }
Implementarea interfetelor:
class Child : MyInterface { override fun bar() { // body } }
O clasă sau un obiect poate implementa una sau mai multe interfețe.



