Java コード内に JavaScript を実装する便利な方法として Rhino について読んでいます。
しばらく読んだ後、google と here で検索しましたが、Java 内で JavaScript を使用する本当の理由を見つけることができませんでした。
通常の Java アプリケーションに Rhino を使用することで得られる実際の利点をいくつか挙げていただけますか?
Java コード内に JavaScript を実装する便利な方法として Rhino について読んでいます。
しばらく読んだ後、google と here で検索しましたが、Java 内で JavaScript を使用する本当の理由を見つけることができませんでした。
通常の Java アプリケーションに Rhino を使用することで得られる実際の利点をいくつか挙げていただけますか?
Java 6以降、スクリプトAPIは標準のJavaライブラリに含まれていることに注意してください。パッケージのドキュメントを参照してくださいjavax.script
。のAPIjavax.script
は、Rhinoの適応バージョンです。スクリプトAPIは、JavaScriptだけでなく、他の多くのスクリプト言語もサポートしています。
Javaスクリプティングプログラマーズガイドを参照してください
そこのフロントページには、スクリプトを使用する理由がいくつか記載されています。
- アプリケーションの拡張/カスタマイズ:構成スクリプト、ビジネスロジック/ルール、金融アプリケーションの数式など、アプリケーションの一部を「外部化」できます。
- アプリケーション用の「コマンドライン」シェル-デバッグ、ランタイム/デプロイ時間の構成など。最近のほとんどのアプリケーションには、WebベースのGUI構成ツールがあります。しかし、sysadmins / deployersは、コマンドラインツールを好むことがよくあります。その目的のためにアドホックスクリプト言語を発明する代わりに、「標準」スクリプト言語を使用することができます。
例:Pythonスクリプトを使用してOracle Weblogicのスクリプトを作成できます。たとえば、アプリケーションサーバーのドメインを構成したり、サーバーを起動または停止したり、その他の管理タスクを実行したりできます。
javascriptのようなスクリプト言語をソフトウェアに埋め込むことの利点は、ソースコードを提供せずに、ソフトウェアのプラグインを作成する方法を他の人に提供できることです。
アプリ全体を別の言語で作成する理由は、Javaを習得しなくても、JavaEE環境にアプリをデプロイする会社向けのアプリを作成できるためです。
製品の 1 つで DSL に JS (Rhino 経由) を使用しています。これは優れた DSL ではありませんが、Rhino ではなく JS の使用方法に問題があります。
.Net も検討している場合は、Rhino を使用することをお勧めします。
Java 環境に加えて、rhino は .NET 環境 (IKVM を使用) で最高のパフォーマンスを発揮するインタープリターの 1 つです。一方、nashorn は .net では非常に遅いです。
独自の Rhino プロジェクトを .NET に移植することはそれほど難しくありません。