Introductie van de ontwikkeling van Kotlin voor Android-apps

Schrijver: John Stephens
Datum Van Creatie: 24 Januari 2021
Updatedatum: 4 Juli- 2024
Anonim
Access to the gallery (Dangerous Permissions)  - Item- Android App Development - Kotlin Lesson 10
Video: Access to the gallery (Dangerous Permissions) - Item- Android App Development - Kotlin Lesson 10

Inhoud


Kotlin is een statisch getypte programmeertaal van JetBrains. Het is volledig ‘interoperabel’ met Java (wat betekent dat u Java-frameworks kunt gebruiken en zelfs opdrachten van beide in uw code kunt combineren) en heeft geen beperkingen. Android-ontwikkelaars gebruiken Kotlin eigenlijk al een tijdje via een plug-in en naar verluidt zijn sommige populaire apps in de Play Store (zoals Basecamp) uitsluitend met die taal gebouwd. Maar nu, vanaf Android Studio 3.0, zal het worden gebundeld en out-of-the-box worden ondersteund.

Met Kotlin kunnen we aanzienlijke hoeveelheden boilerplate verwijderen

Dus waarom zou u ervoor kiezen om Kotlin te gebruiken voor Android-apps in plaats van Java? Nou, de belangrijkste reden is dat het je leven in een aantal gevallen een beetje gemakkelijker kan maken.

Kotlin elimineert bijvoorbeeld nulreferenties en heeft geen uitzonderingen gecontroleerd - beide kunnen devs wat hoofdpijn besparen. Zoals u zult zien, stellen verschillende functies van Kotlin voor Android ons ook in staat om aanzienlijke hoeveelheden boilerplate-code te verwijderen, wat resulteert in slankere, beter leesbare programma's. Over het algemeen is dit een modernere taal en als u niet al diep geworteld bent in Java of vast wilt houden aan de ‘meest officiële’ methode, dan is het misschien het overwegen waard. Voor degenen die net zijn begonnen, kan Kotlin een meer vergevingsgezinde leercurve vertegenwoordigen.


Volgende lezen:Kotlin versus Java: belangrijkste verschillen tussen de officieel ondersteunde talen van Android

Dus, voor diegenen die geïnteresseerd zijn in het integreren van Kotlin in hun workflow, hoe kan iemand dan vastlopen?

Aan de slag

Het goede nieuws is dat gezien het feit dat Kotlin is ingepakt met Android Studio 3.0 en hoger, het niet nodig is om iets nieuws te downloaden en slechts een zeer minimale set-up te gebruiken. Welkom in de toekomst! Als u Android Studio 3.0 hebt, krijgt u bij het maken van een nieuw project de optie om Kotlin-ondersteuning op te nemen. Als u dit vakje aanvinkt, hoeft u uw project later niet meer te configureren.

Voorheen moesten ontwikkelaars hun bestanden handmatig naar Kotlin converteren via het menu, maar nu wordt dit standaard voor u gedaan.


Open MainActivity.kt (waarbij Kt de extensie Kotlin is) en u zou meteen moeten zien dat er enkele belangrijke verschillen zijn in de manier waarop dingen worden geschreven en opgemaakt.

Je bent nu klaar om te beginnen met het ontwikkelen met Kotlin voor Android!

Merk op dat het meestal een goed idee is om een ​​nieuwe map voor uw Kotlin-bestanden te maken, of om uw Java-map volledig te vervangen als u vanaf nu puur Kotlin gebruikt. U kunt nieuwe Kotlin-bestanden maken door met de rechtermuisknop op de doelmap te klikken en dan selecteren Nieuw> Kotlin-activiteit.

Hallo Kotlin voor Android: enkele basissyntaxis en verschillen

Oké, laten we eens kijken naar de code die we al hebben. Ten eerste merk je misschien dat je de lessen declareert met behulp van klasse net zoals je zou doen in Java. Het verschil is dat er geen is openbaar zoekwoord, dat komt omdat alle lessen in Kotlin zijn openbaar en definitief. Je merkt misschien ook dat we deze niet gebruiken uitbreiden een van beide. In plaats daarvan gebruiken we een dubbele punt die hetzelfde doet.

Hoe zit het daarmeepret commando? Dit is eigenlijk een afkorting voor ‘functie’ (niet zo leuk), dus in plaats van schrijven openbare nietigheid je gaat nu schrijven pret. Dit geeft onze klas dan een openbare functie die we vanuit andere klassen kunnen oproepen. Argumenten worden tussen haakjes aangegeven na de functienaam. Om dit te doen, moet je weten hoe je variabelen definieert, wat een beetje anders is. Om een ​​string te maken, zou je kunnen schrijven:

var text: String = "Hallo"

Hoewel Kotlin eigenlijk meestal slim genoeg is om het type van een variabele net als Python te identificeren, kun je over het algemeen gewoon schrijven:

var text = "Hallo"

Om een ​​string te maken, of:

var num = 3

Om een ​​geheel getal te maken. Dit is hoe je een veranderlijke (veranderlijke) variabele zou creëren. val wordt gebruikt om constanten te maken. Dus als u functies met argumenten maakt, is dat wat u tussen haakjes ziet. En deze variabelen kunnen standaardwaarden hebben, wat ook handig is. Dus je zou zoiets als dit kunnen zien:

leuk SayHello (var userName: String = "User") {textView.setText ("Hallo, $ userName!")}

Er is nog een groot verschil dat je nu misschien al hebt opgemerkt ... geen puntkomma's! Je bent vrij om ze op te nemen als je wilt, maar er is geen verplichting meer en je wordt niet bestraft als je er een mist. Als je iemand bent dienog steedsvergeet er altijd ergens een, dan is dit misschien goed nieuws!

Je zult veel andere kleine verschillen in de syntaxis opmerken terwijl je verder gaat en het is natuurlijk buiten het bereik van dit bericht om ze hier allemaal op te sommen. De structuur is echter nog steeds redelijk vergelijkbaar, dus over het algemeen moet je kunnen afleiden wat alles doet uit de context en misschien met een beetje vallen en opstaan. U vindt hier een geweldige introductie.

De echte kracht van Kotlin: u helpen minder te typen

Vaak ziet code er in Kotlin voor Android een stuk eenvoudiger en korter uit dan in Java. Overweeg het volgende voorbeeld van het toevoegen van een onClickListener aan een FAB. Hier is hoe je het zou doen in Java:

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

En dit is hetzelfde in Kotlin:

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

Het is gewoon een stuk eenvoudiger en eenvoudiger en het zorgt voor meer leesbare code terwijl je verdergaat. Zoals ik al zei: minder boilerplate. En eigenlijk gaat het veel dieper dan dit. Kotlin-ontwikkelaars kunnen dat ooit wegschrijven findViewByID nog een keer! Hiervoor moet u een plug-in toepassen.

U doet dit op moduleniveau build.gradle bestand door de regel toe te voegen:

plugin toepassen: ‘kotlin-android-extensions’

Klik op 'synchroniseren' en u kunt dan verwijzingen naar uw weergaven bovenaan uw code importeren, als volgt:

import kotlinx.android.synthetic.main..

Door dit te doen, kunt u direct toegang krijgen tot de weergave zonder dat u de ID hoeft te gebruiken. Dit maakt het leven veel eenvoudiger en kan u besparen bij het schrijven van een lot van willekeurige code.

Voeg lambda-expressies toe en je code wordt inderdaad erg beknopt. Lambda-uitdrukkingen zijn anonieme functies waarmee u de hoeveelheid die u moet schrijven verder kunt verminderen door alles op één regel te zetten. De instructie wordt omgeven door accolades, met parameters gevolgd door een pijlsymbool en vervolgens het lichaam. Bijvoorbeeld een onClickListenerkan er zo uitzien:

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

En als de functie een andere functie als laatste parameter vereist, kunt u deze buiten haakjes doorgeven:

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

Door deze technieken te combineren, kun je jezelf een hoop druk werk besparen en zul je in de toekomst veel meer nuttige tijdbesparende strategieën vinden.

Lees volgende: Kotlin Coroutines en hun rol in asynchroon programmeren voor Android

Vooruit gaan

En daar heb je het: dat is Kotlin voor Android in een notendop. Is het geschikt voor u? Uiteindelijk komt dit neer op persoonlijke voorkeur en je gevoeligheden als het gaat om codering. Persoonlijk ben ik een fan van het gestroomlijnde karakter van Kotlin en de manier waarop het veel onnodige coderegels verwijdert. Hopelijk heeft dit bericht je genoeg inleiding gegeven die je kunt bedenken en doorgaan met je opleiding als je besluit dat het interessant is. Als je wat wilt spelen, dan kun je het hier in je browser proberen.

Wat je ook besluit, meer opties hebben is alleen maar goed!

Deze recenie wordt aan u gekocht door de menen van Moment, die uittekende fototaen en lenzen maken om uw martphonefotografie naar een hoger niveau te tillen....

Een geweldige telefoon, maar waarchijnlijk te groot. Dat wa ongeveer wat de per dacht toen amung in 2011 de Galaxy Note onthulde op IFA Berlin. De telefoon had alle technologie die je maar kon wenen, ...

Recente Artikelen