Kotlin og Javascript

1. Oversigt

Kotlin er et næste generations programmeringssprog udviklet af JetBrains. Det vinder popularitet med Android-udviklingssamfundet som erstatning for Java.

Et andet spændende træk ved Kotlin er understøttelsen af ​​JavaScript på server- og klientsiden. I denne artikel skal vi diskutere, hvordan man skriver JavaScript-applikationer på serversiden ved hjælp af Kotlin.

Kotlin kan sendes (kildekode skrevet på et sprog og omdannes til et andet sprog) til JavaScript. Det giver brugerne mulighed for at målrette mod JVM og JavaScript ved hjælp af det samme sprog.

I de kommende sektioner skal vi udvikle en node.js-applikation ved hjælp af Kotlin.

2. node.js

Node.js er et magert, hurtigt, runtime-miljø på tværs af platforme til JavaScript. Det er nyttigt til både server- og desktop-applikationer.

Lad os starte med at oprette et node.js-miljø og projekt.

2.1. Installation af node.js

Node.js kan downloades fra Node-webstedet. Den leveres med npm-pakkehåndteringen. Efter installationen er vi nødt til at oprette projektet.

Lad os køre i den tomme mappe:

npm init

Det vil stille et par spørgsmål om pakke navn, version beskrivelse og et indgangspunkt. Angiv "kotlin-node" som navn, “Eksempel på Kotlin-node” som beskrivelse og “crypto.js” som indgang. For resten af ​​værdierne beholder vi standardværdien.

Denne proces vil generere en pakke.json fil.

Herefter skal vi installere et par afhængighedspakker:

npm install npm install kotlin --save npm install express --save

Dette installerer de moduler, der kræves af vores eksempelapplikation i den aktuelle projektmappe.

3. Oprettelse af en node.js Ansøgning ved hjælp af Kotlin

I dette afsnit opretter vi en crypto API-server ved hjælp af node.js i Kotlin. API'en henter nogle selvgenererede kryptokurrency-priser.

3.1. Opsætning af Kotlin-projektet

Lad os nu opsætte Kotlin-projektet. Vi bruger Gradle her, som er den anbefalede og brugervenlige tilgang. Gradle kan installeres ved at følge instruktionerne på Gradle websted.

Derefter genererer du et indledende Gradle-projekt ved hjælp af init-opgaven. Vælg den "grundlæggende" projekttype, Kotlin for implementeringssprog, Groovy som build script DSL, indtast derefter "kotlin-node" for projektnavnet, og "baeldung" som pakkenavn.

Dette vil skabe en build.gradle fil. Erstat indholdet af denne fil med:

buildscript {ext.kotlin_version = '1.4.10' repositories {mavenCentral ()} afhængigheder {classpath "org.jetbrains.kotlin: kotlin-gradle-plugin: $ kotlin_version"}} gruppe 'com.baeldung' version '1.0-SNAPSHOT' anvend plugin: 'kotlin2js' repositories {mavenCentral ()} afhængigheder {kompilér "org.jetbrains.kotlin: kotlin-stdlib-js: $ kotlin_version" testCompile "org.jetbrains.kotlin: kotlin-test-js: $ kotlin_version"} compileKotlin2s .kotlinOptions {moduleKind = "commonjs" outputFile = "node / crypto.js"}

Der er to vigtige punkter at fremhæve i build.gradle fil. Først anvender vi kotlin2js plugin for at gøre transpilation.

Så ind KotlinOptions, vi satte os moduleKind til "commonjs ” at arbejde med node.js. Med outputFile mulighed, vi styrer, hvor den transpilerede kode skal genereres.

Bemærk: Sørg for, at ext.kotlin_version i build.gradle filen matcher filen i pakke.json fil.

3.2. Oprettelse af en API

Lad os begynde at implementere vores ansøgning ved at oprette kildemappen src / main / kotlin, derefter pakkestrukturen com / baeldung / kotlinjs.

I denne pakke opretter vi filen CryptoRate.kt.

I denne fil skal vi først importere kræve funktion, og opret derefter vigtigste metode:

ekstern sjov kræver (modul: String): dynamisk sjov hoved (args: Array) {}

Derefter importerer vi de nødvendige moduler og opretter en server, der lytter til port 3000:

val express = kræve ("express") val app = express () app.listen (3000, {println ("Lytter på port 3000")}) 

Endelig tilføjer vi API-slutpunktet "/ crypto". Det genererer og returnerer dataene:

app.get ("/ crypto", {_, res -> res.send (genererCrypoRates ())}) dataklasse CryptoCurrency (var navn: String, var pris: Float) fun genererCryptoRates (): Array {return arrayOf (CryptoCurrency ("Bitcoin", 90000F), CryptoCurrency ("ETH", 1000F), CryptoCurrency ("TRX", 10F); }

Vi har brugt node.js express-modulet til at oprette API-slutpunktet.

4. Kør applikationen

At køre applikationen vil være en todelt proces. Vi er nødt til at transponere Kotlin-koden til JavaScript, før vi kan starte vores applikation med Node.

For at oprette JavaScript-koden bruger vi Gradle build-opgaven:

./gradlew build 

Dette genererer kildekoden i knude vejviser.

Dernæst udfører vi den genererede kodefil crypto.js ved hjælp af Node.js:

node node / crypto.js 

Dette starter serveren, der kører i port 3000. Lad os i browseren få adgang til API'en ved at påkalde // localhost: 3000 / krypto for at få dette JSON-resultat:

[{"name": "Bitcoin", "price": 90000}, {"name": "ETH", "price": 1000}, {"name": "TRX", "price": 10}]

Alternativt kan vi bruge værktøjer som Postbud eller SæbeUI at forbruge API'en.

5. Konklusion

I denne artikel har vi lært, hvordan man skriver node.js-applikationer ved hjælp af Kotlin.

Vi har bygget en lille tjeneste på få minutter uden at bruge nogen kedelpladekode.

Som altid kan kodeeksemplerne findes på GitHub.


$config[zx-auto] not found$config[zx-overlay] not found