Java の世界で優先するスクリプト言語 (JVM 上のスクリプト言語) と方法は何ですか? Java よりもスクリプト言語を好むのはいつですか (たとえばプロトタイピングの場合など)。大規模なプロジェクトに使用しますか、それとも個人的なプロジェクトにのみ使用しますか?
8 に答える
私にとっては、Clojureが圧勝です。Lisp であるため、簡潔で動的に型付けされ、膨大な表現力を備えているため、多くの機能を数行で記述できます。そして、Java との統合は卓越したものです。Clojure は Java 自体よりも Java との互換性が高いと言うのは、冗談の一部にすぎません。その結果、JDK とサードパーティの両方からの Java ライブラリの全体が完全に使用可能になります。
最後に、少し注意すれば、Clojure コードは Java コードと同じくらい高速になる可能性があるため、パフォーマンスが低下することさえありません。
商用プロジェクトでGroovyを使用して成功しました。ダックタイピングとクロージャがあるため、スクリプト言語を好みます。
def results = []
def min = 5
db.select(sql) { row ->
if (row.value > min)
results << row;
}
翻訳: データベースに対して SQL クエリを実行し、列「値」が「最小」より大きいすべての行を「結果」に追加します。内側の「ループ」にデータを渡したり、そこから結果を取得したりするのがいかに簡単であるかに注目してください。そして、はい、私は SQL で同じことを達成できることを認識しています:
def results = []
def min = 5
db.select(sql, min) { row ->
results << row;
}
(「sql」の文字列の適切な場所に「?」があると想像してください)。
IMHO、リッチリスト操作(ソート、フィルター、変換)とクロージャーを提供しない言語でDBを使用することは、それを行うべきではない例としてのみ機能します。
Jython をもっと使いたいと思っていますが、Jython 2.5 の作業は最近始まったばかりで、Python 2.2 は私の目的には古すぎます。
私のお気に入りは Jython で、Java アプリケーションに Jython インタープリターを組み込んで使用しています。商用プロジェクトで使用されており、何もコンパイルすることなく、顧客のニーズに応じてアプリケーションを簡単にカスタマイズできます。スクリプトを送るだけです。一部のお客様は、アプリケーションを自分でカスタマイズすることさえあります。
Java。真剣に。これは、誰もが知っている強力で使いやすい(少し冗長な場合)言語です。Javaとの統合は素晴らしいです。
JavaScript Rhino には魅力的な利点があります。JDK に含まれています。そうは言っても、Rhino の Java 6 よりも新しいバージョンには、ジェネレーター、配列内包表記、および構造化代入などの優れた機能があります。
私は、Java の例外を処理する式典がコードを混乱させ、実際の利益がない場合はいつでも、それを使用することを好みます。また、Java ライブラリを利用する単純なコマンドライン スクリプトを作成する場合にも使用します。
私は Scala の方が好きかもしれませんが、まだ学んでいるとは言えません。現時点では、Groovy を使用して小さなユーティリティ プログラムを作成しています。Groovy on Grails も試していません。Lift Framework for Scalaについても、多くの良い意見を聞きました。
SISC(スキームコードの2番目の解釈者)はどうですか?