コトリンとジャバスクリプト

KotlinとJavascript

1. 概要

Kotlinは、JetBrainsが開発した次世代プログラミング言語です。 Javaの代わりとしてAndroid開発コミュニティで人気を博しています。

Kotlinのもう1つのエキサイティングな機能は、サーバー側とクライアント側のJavaScriptのサポートです。 この記事では、Kotlinを使用してサーバー側のJavaScriptアプリケーションを作成する方法について説明します。

Kotlinは、JavaScriptに変換(ソースコードをある言語で記述し、別の言語に変換)できます。 It gives users the option of targeting the JVM and JavaScript using the same language.

次のセクションでは、Kotlinを使用してnode.jsアプリケーションを開発します。

2. node.js

Node.js is a lean, fast, cross-platform runtime environment for JavaScript. サーバーアプリケーションとデスクトップアプリケーションの両方に役立ちます。

まず、node.js環境とプロジェクトを設定しましょう。

2.1. node.jsのインストール

Node.js can be downloaded from the Node website. npmパッケージマネージャーが付属しています。 インストール後、プロジェクトをセットアップする必要があります。

空のディレクトリで、次のコマンドを実行してみましょう。

npm init

パッケージ名、バージョンの説明、およびエントリポイントに関するいくつかの質問をします。 「kotlinNode」をnameとして、「Kotlin Node Example」をdescriptionとして、「crypto.js」をentrypointとして指定します。 残りの値については、デフォルトのままにします。

このプロセスにより、package.json fileが生成されます。

この後、いくつかの依存パッケージをインストールする必要があります。

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

これにより、サンプルアプリケーションに必要なモジュールが現在のプロジェクトディレクトリにインストールされます。

3.  Kotlinを使用してnode.jsアプリケーションを作成する

このセクションでは、Kotlinのnode.jsを使用して暗号化APIサーバーを作成します。APIは、自己生成された暗号通貨レートを取得します。

3.1. Kotlinプロジェクトのセットアップ

それでは、Kotlinプロジェクトをセットアップしましょう。 ここではGradleを使用します。これは、推奨される使いやすいアプローチです。 Gradleは、Gradle siteに記載されている手順に従ってインストールできます。

同じディレクトリにbuild.gradleファイルを作成することから始めましょう。

buildscript {
    ext.kotlin_version = '1.2.41'
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

group 'com.example'
version '1.0-SNAPSHOT'
apply plugin: 'kotlin2js'

repositories {
    mavenCentral()
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib-js:$kotlin_version"
    testCompile "org.jetbrains.kotlin:kotlin-test-js:$kotlin_version"
}

compileKotlin2Js.kotlinOptions {
    moduleKind = "commonjs"
    outputFile = "node/crypto.js"
}

build.gradleファイルで強調する2つの重要なポイントがあります。 First, we apply the kotlin2js plugin to do theのトランスパイル。

次に、KotlinOptionsで、moduleKind を「commonjs” 」に設定してnode.jsを操作します。 outputFile optionweを使用して、トランスパイルされたコードが生成される場所を制御します。

3.2. APIを作成する

ソースフォルダsrc/main/kotlinを作成して、アプリケーションの実装を始めましょう。

このフォルダに、ファイルCryptoRate.kt.を作成します

このファイルでは、最初にrequire関数をインポートしてから、mainメソッド:を作成する必要があります。

external fun require(module: String): dynamic

fun main(args: Array) {

}

次に、必要なモジュールをインポートし、ポート3000でリッスンするサーバーを作成します。

val express = require("express")

val app = express()
app.listen(3000, {
    println("Listening on port 3000")
})

最後に、APIエンドポイント「/ crypto」を追加します。 データを生成して返します:

app.get("/crypto", { _, res ->
    res.send(generateCrypoRates())
})

data class CryptoCurrency(var name: String, var price: Float)

fun generateCryptoRates(): Array {
    return arrayOf(
      CryptoCurrency("Bitcoin", 90000F),
      CryptoCurrency("ETH",1000F),
      CryptoCurrency("TRX",10F)
    );
}

node.js Expressモジュールを使用してAPIエンドポイントを作成しました。 

4. アプリケーションを実行する

アプリケーションの実行は2つの部分からなるプロセスになります。 Nodeでアプリケーションを開始する前に、KotlinコードをJavaScriptに変換する必要があります。

JavaScriptコードを作成するには、「Gradleビルド」タスクを使用します。

gradlew build

これにより、nodeディレクトリにソースコードが生成されます。

次に、Node.jsを使用して生成されたコードファイルcrypto.jsを実行します。

node node/crypto.js

これにより、ポート3000で実行されているサーバーが起動します。ブラウザで、http://localhost:3000/cryptoを呼び出してAPIにアクセスし、次のJSON結果を取得します。

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

または、PostmanSoapUI などのツールを使用してAPIを使用することもできます。

5. 結論

この記事では、Kotlinを使用してnode.jsアプリケーションを作成する方法を学びました。

ボイラープレートコードを使用せずに、数分で小さなサービスを構築しました。

いつものように、コードサンプルはover on GitHubで見つけることができます。