Logo nl.androidermagazine.com
Logo nl.androidermagazine.com

Kotlin: alles wat je moet weten over de nieuwste ontwikkeltaal van Android

Inhoudsopgave:

Anonim

Google kondigde ondersteuning aan voor Kotlin in Android op Google I / O 2017. Het versterkte hoe belangrijk Kotlin weer is voor app-ontwikkeling in 2018, maar velen van ons weten niet zeker wat er aan de hand is of waarom we moeten zorgen. Natuurlijk, we weten dat het iets is voor app-ontwikkelaars en ze zijn er dol op, maar waarom zijn ze er dol op? Wat is het precies?

Om te beginnen moet je begrijpen dat Kotlin slechts een deel is van wat Google doet om de ontwikkeling van Android-apps 'beter' te maken. Ik zeg hier beter omdat deze tools meer doen dan het gemakkelijker of sneller maken, ze stellen ontwikkelaars in staat om meer te doen en betere apps te bouwen. Apps die "beter" werken, zien er "beter" uit en omgaan met middelen "beter". Terug naar Kotlin - het is misschien slechts een deel van de ontwikkelaarstoolkit van Google, maar het is het belangrijkste omdat het meer dan elke andere nieuwe functie doet om apps en hun ontwikkeling "beter" te maken.

Ik hou van deze video. Ik weet dat velen van ons er niet veel van zullen begrijpen (en ik begrijp het niet allemaal zelf, geen schaamte hier) maar je kunt zien dat de presentatoren - Chet Haase en Romain Guy - oprecht enthousiast zijn om de tools te laten zien en de ontwikkelaars in het publiek zijn net zo enthousiast om over hen te horen. We zien ook hoe Google is verdubbeld door niet alleen Kotlin te ondersteunen, maar te integreren met extensies die het bouwen van "betere" apps nog "beter" maken.

Dus wat is Kotlin?

Kotlin is een programmeer- en ontwikkeltaal van JetBrains, het bedrijf achter de IntelliJ Java IDE (een ontwikkelaarssuite van tools en applicaties die samenwerkt zoals Microsoft Office) waarop Android Studio is gebaseerd. Maar Kotlin is op zichzelf geen programmeertaal; het is een nieuwe manier om code te schrijven die Java gebruikt om uit te voeren.

Java is iets waar je waarschijnlijk over hebt gehoord. Het is een programmeertaal die applicaties kan bouwen die op bijna elk besturingssysteem op elke hardware draaien. Het is krachtig, wat betekent dat je Java kunt gebruiken om programma's te schrijven die veel verschillende dingen doen, zoals games of hulpprogramma's of hardwarecontrole of iets anders. Het is ook de programmeertaal waarin bijna elke Android-applicatie is geschreven, evenals delen van Android zelf, zoals je thuis-app of telefoonkiezer-app.

Kotlin kan apps bouwen die op Java draaien met veel minder hoofdpijn.

Java is ook erg omslachtig om in te coderen. Omdat het zo krachtig is en platformoverschrijdend is (het apparaat dat u gebruikt om dit te lezen heeft waarschijnlijk een Java-toepassingsraamwerk en runtime geïnstalleerd) is het ingewikkeld. Java is een programmeertaal met meerdere paradigma's die objectgeoriënteerd programmeren ondersteunt. U schrijft code met behulp van objecten (een variabele of een functie of bijna elke soort gegevensset) en u gebruikt klassen om het type en de initiële gegevens in een object te definiëren. Oh, en je moest zeker de juiste bibliotheken opnemen waarmee de klassen een object definiëren. Zie je wat ik bedoel als ik ingewikkeld zeg? En ik laat zelfs een groot deel van de informatie weg over hoe objectgeoriënteerd programmeren werkt en geef gewoon een basisoverzicht.

Kotlin neemt veel van die omslachtige dingen weg. Java moet nog geïnstalleerd zijn op een apparaat waarop apps worden geschreven die in Kotlin zijn geschreven, omdat het een app maakt die op dezelfde manier wordt uitgevoerd als in "gewone" Java. Maar het is een stuk eenvoudiger om apps te schrijven! Kotlin is een programmeertaal die Android-ontwikkelaars kunnen gebruiken om geweldige apps te bouwen, terwijl ze minder tijd besteden aan het uitzoeken van de harde onderdelen en het debuggen van testversies. Je krijgt geweldige apps en ontwikkelaars kunnen ze gemakkelijker schrijven.

Wat maakt Kotlin beter?

Ontwikkelaars waar ik het over heb gehad, zijn dol op veel dingen over Kotlin, maar er zijn drie dingen die iedereen lijkt te noemen.

  • Kotlin gebruikt agressieve type inferentie. Dat betekent dat het kan vertellen welk type gegevens een functie gebruikt op basis van de rest van de code en hoe deze wordt gebruikt. Dit betekent dat ontwikkelaars geen tijd hoeven te spenderen om het type uitdrukkingen en waarden in hun code te declareren, tenzij ze iets doen dat echt buiten de kaders valt. Dat bespaart veel tijd omdat het declareren van een gegevenstype vervelend kan zijn en de code perfect moet zijn.

  • Met Kotlin kunnen ontwikkelaars statische objecten en functies definiëren zonder een redundante klasse te hoeven gebruiken. Een ontwikkelaar kan de objecten en hun functies allemaal op één plek definiëren, dus het is een stuk gemakkelijker te lezen en te begrijpen, wat het gemakkelijker maakt om te debuggen. En ze hoeven geen code op te nemen die niet nodig zou zijn, omdat het dupliceert wat ze net hebben getypt. Java dwingt dit omdat de syntaxis zo werkt. Kotlin is meer ontspannen en houdt van code schrijven in C, en in dit geval is het eenvoudiger en logischer.

  • De syntaxis van Kotlin is niet absurd complex. De syntaxis van Java is. Daarom duurt het jaren om een ​​deskundige Java-ontwikkelaar te zijn - je moet dingen zoals puntkomma's en accolades en haakjes op exacte plaatsen opnemen, zodat de compiler (de tool die van code een app maakt) weet wat te doen. De syntaxis van Kotlin maakt gebruik van de beste ideeën uit programmeertalen die ervoor bestonden en het schrijven van code is eenvoudiger. Dit betekent ook dat het lezen en begrijpen van de code eenvoudiger is en foutopsporing minder tijd kost.

De drie dingen hebben vooral één ding gemeen, en daarom houden ontwikkelaars zo veel van Kotlin - de code is vriendelijker. Het schrijven van de code is sneller, vergevingsgezinder en gewoon eenvoudiger dan in Java, en het lezen van de code die u of iemand anders heeft geschreven is logischer. Het ziet er nog steeds uit als code, maar niet alle code is even complex. Uiteindelijk krijg je nog steeds een applicatie die bijna alles kan doen waar een ontwikkelaar van kan dromen, maar waardoor het minder hoofdpijn met zich meebrengt.

Wordt Java uitgefaseerd?

Nee! Java wordt in ieder geval sterker en beter gemaakt met de nieuwste versies van Android en Android Studio.

Ik heb Kotlin horen definiëren als "Java-licht". Dat is zowel een goede als een slechte manier om het te beschrijven, maar het brengt de boodschap over - Kotlin is bijna hetzelfde als Java, gebruikt de Java-machine in uw apparaat om een ​​voltooide app te draaien, maar heeft minder een frustratiefactor. Kotlin heeft Java nodig om op uw telefoon of computer te worden geïnstalleerd of wat de toekomst van apparaten ook zal zijn. Het is volledig interoperabel en u kunt Kotlin en Java zelfs tegelijkertijd in een toepassing gebruiken.

Met Kotlin kunnen platformontwikkelaars (denk aan de mensen die Android 'maken') ondersteuningstools toevoegen om het schrijven van code nog eenvoudiger te maken. We zagen dat op Google I / O 2018 toen extensies voor Kotlin werden toegevoegd, die fungeren als een snelkoppeling om alle code uit te schrijven die nodig is voor iets dat een ontwikkelaar steeds opnieuw moet doen.

In plaats van "Java Light" wordt Kotlin beter omschreven als "Java ++" omdat het een natuurlijke evolutie van de taal is en dezelfde dingen met minder frustratie kan doen.

Zullen de apps beter zijn of er anders uitzien?

Misschien, maar vanwege de bijwerkingen van het gebruik van Kotlin en niet vanwege de functies van de taal zelf.

De programmeertaal heeft heel weinig te maken met hoe een app eruit ziet of hoe het werkt. Het is gewoon hoe een ontwikkelaar je telefoon vertelt iets te doen en je vervolgens op een of andere manier het resultaat te laten zien. Als een ontwikkelaar minder tijd kan besteden aan het schrijven van de gecompliceerde code waardoor uw telefoon dat ding doet en u erover vertelt, hebben ze meer tijd om betere functies toe te voegen of een beter ontwerp te bouwen.

Het ontwikkelen van een applicatie omvat verschillende belangrijke stappen. Het schrijven van de code is niet belangrijker dan het bouwen van een geweldig ontwerp en gebruikersinterface of ervoor zorgen dat de app iets doet wat mensen willen. Het schrijven van de code kan echter meer tijd kosten, en het vrijmaken van die tijd zorgt ervoor dat de andere fasen beter worden. Kotlin maakt een deel van de ontwikkelingstijd vrij.

Waar kan ik meer te weten komen over Kotlin of aan de slag?

Bezoek de Kotlin-website van JetBrains voor alles wat je nodig hebt om te beginnen. Van daaruit krijgt u de basis en een overzicht van Kotlin op een meer technisch niveau. Voor Android-ontwikkeling bezoekt u deze pagina's:

  • Kotlin op de Android Developer-pagina's
  • Android Kotlin-extensies
  • Kotlin-stijlgids
  • Kotlin Interoperabiliteitsgids

U kunt Android Studio, Eclipse, IntelliJ IDEA of een zelfstandige compiler gebruiken om Kotlin-apps voor Android of uw webbrowser te bouwen. Er zijn zelfs geweldige tutorials om je in de goede richting te wijzen!

Het is niet moeilijk. Er is een leercurve als je nog nooit iets hebt ontwikkeld, maar het is leuk. Wees niet bang om zoveel mogelijk te proberen en te leren!

Update, 11 mei 2018: dit artikel is volledig herschreven vanwege de wijzigingen die in Kotlin zijn aangebracht sinds het in 2017 aan Android is toegevoegd.