1.概要

KotlinはJetBrainsによって開発された次世代プログラミング言語です。

それは、Javaの代わりとしてAndroid開発コミュニティで人気を集めています。

Kotlinのもう1つの魅力的な機能は、サーバーサイドおよびクライアントサイドのJavaScriptのサポートです。この記事では、Kotlinを使ってサーバーサイドのJavaScriptアプリケーションを作成する方法について説明します。

KotlinはJavaScriptに変換することができます(ある言語で書かれ、別の言語に変換されたソースコード)。 ** 同じ言語を使ってJVMとJavaScriptをターゲットにすることができます。

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

2. node.js

Node.jsは、JavaScript用の効率的で高速なクロスプラットフォームのランタイム環境です。サーバーアプリケーションとデスクトップアプリケーションの両方に役立ちます。

node.js環境とプロジェクトを設定することから始めましょう。

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

Node.jsはhttps://nodejs.org/en/download/[ノードのWebサイト]からダウンロードできます。 npmパッケージマネージャが付属しています。インストールしたら、プロジェクトを設定する必要があります。

空のディレクトリで、実行しましょう:

npm init

パッケージ名、バージョンの説明、およびエントリポイントについていくつか質問があります。

name

として「kotlinNode」、

description

として「Kotlin Node Example」、および

entrypoint

として「crypto.js」を指定します。その他の値については、デフォルトをそのまま使用します。

このプロセスは

__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はhttps://gradle.org/install/[

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.baeldung'
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つの重要な点があります。

  • まず、私たちは

    kotlin2js

    プラグインを適用して** transpilationを行います。

次に、

KotlinOptions

で、

__moduleKind


を“


commonjs”


に設定して、node.jsを操作します。


outputFile


option






__を使用して、変換されたコードが生成される場所を制御します。

3.2. APIを作成する

ソースフォルダ

src/main/kotlin

を作成して、アプリケーションの実装を始めましょう。

このフォルダ内に、

CryptoRate.kt.

というファイルを作成します。

このファイルでは、最初に

require

関数をインポートしてから

main

メソッドを作成する必要があります


_:

_

external fun require(module: String): dynamic

fun main(args: Array<String>) {

}

次に、必要なモジュールをインポートし、ポート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<CryptoCurrency> {
    return arrayOf<CryptoCurrency>(
      CryptoCurrency("Bitcoin", 90000F),
      CryptoCurrency("ETH",1000F),
      CryptoCurrency("TRX",10F)
    );
}

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

    __

    **

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

アプリケーションの実行は2部構成のプロセスになります。 Nodeを使ってアプリケーションを起動する前に、KotlinコードをJavaScriptに変換する必要があります。

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

gradlew build

これにより、

node

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

次に、Node.jsを使用して生成されたコードファイル

crypto.js

を実行します。

node node/crypto.js

これにより、ポート3000

__で実行されているサーバーが起動します。


ブラウザで


http://localhost:3000/crypto__を呼び出してこのJSONの結果を取得し、APIにアクセスします。

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

あるいは、

Postman



__SoapUI

__のようなツールを使ってAPIを利用することもできます。

5.まとめ

この記事では、Kotlinを使ってnode.jsアプリケーションを書く方法を学びました。

定型コードを使用せずに、数分で小さなサービスを構築しました。

いつものように、コードサンプルはhttps://github.com/eugenp/tutorials/tree/master/kotlin-js[over on GitHub]にあります。