jsii - JavaScriptから各種言語へ変換
一つの言語で書いたコードが他でも活かせれば開発効率は向上するでしょう。ロジックの共有化をすることで、プログラミング言語の選択肢が広がり、UIや利用層によって最適な言語が選択できるようになります。 今回紹介するjsiiはJavaScriptからJavaや.NETへ変換できるライブラリです。
jsiiの使い方
生成した例です。
JavaScript側ではexportを使ってロジックを公開します。
export class HelloJsii {
public sayHello(name: string) {
return `Hello, ${name}!`
}
}
例えばJavaではライブラリを読み込んで利用します。Javaのjarファイルとして生成されているので普通に使えます。
HelloJsii hello = new HelloJsii();
hello.sayHello("World"); // => Hello, World!
jsiiは現在はJava、.NET、Sphinxとなっています。コードはTypeScriptまたはJavaScriptで記述します。現在、RubyとPythonも開発中とのことです。バインディングではなく、JavaScriptを共通コードとして、各言語に向けて変換するという考え方はユニークです。
jsiiはTypeScript製のオープンソース・ソフトウェア(Apache Licnese 2.0)です。
aws/jsii: Use javascript modules naturally from every programming language