ウェブサイト

新しいGroovyがJava、SQLまでコーズします。

Unicode, UTF 8 and ASCII

Unicode, UTF 8 and ASCII
Anonim

Groovyプログラミング言語の新しいバージョンは、先月、VMwareの一部門であるSpringSourceとGroovyのボランティア開発者のコ​​ミュニティが、動的にコンパイルされた言語の新しいバージョンをリリースしました。新しい機能には、JavaプログラマがGroovyでより簡単に作業できるようにする、いくつかの古いJava機能が含まれています。 Groovyは、Sun MicrosystemsのJVM(Java Virtual Machine)上で動作する言語の数が増えていることの1つです。

Groovyは2003年に考案されたGroovy XML解析など、Java自体が不安定な作業用にカスタマイズされたJavaライクな言語として開発されました。 Javaアプリケーションのインフラストラクチャ管理ソフトウェアプロバイダであるSpringSourceのGroovy開発責任者であるGuillaume Laforgeは、Java開発者はGroovyを使用して、本格的なJavaプログラムに付随する定型的なコードについて時々心配することなく、スクリプトやコードを作成できることを示しました。 Groovyは、JVM上で実行することにより、利用可能な無数のJavaライブラリを使用することもできます。

Laforgeは、正式導入(バージョン1は2007年までリリースされていません)以来、Groovyは、 Javaプログラムのプロトタイプを開発することなどです。 Grails Rapid Developmentフレームワークと連携して、データベース駆動型Webアプリケーションをすばやく立ち上げて実行するためにも使用されています.Laforgeには、これらの仕事を支援するためのさまざまな機能が含まれています。

匿名の内部クラスとネストされたクラスのサポートがあります。このようなサポートはJavaでは以前から利用可能でしたが、Groovyの以前のバージョンでは、closureと呼ばれる同様のテクニックをサポートすることを嫌っていました。どちらのアプローチでも、開発者は、プログラムが遭遇する可能性のあるすべてのビジネスルールに対して新しいクラスを書く必要がないようにコーディングすることができます。 Java保守担当者がクロージャの使用を検討している間、Groovyは匿名の内部クラスとネストされたクラスをサポートし、JavaプログラマがGroovyでより簡単に作業できるようになるとLaforge氏は述べています。

Groovyの新しいバージョンでもSQLとの互換性が強化されていますが、これにより、匿名の内部クラスに大いに依存するJavaフレームワークもGroovyとシームレスに連携できます。 Laforgeは、管理者は、 "あるシステムから別のシステムに大きなバッチのデータを移行するためのGroovyスクリプトを書いている"と述べた。従来のスクリプト言語の多くは、SQLではうまく機能せず、タスク用のJavaプログラムを作成することは過度のものになる可能性があります。 Groovy 1.7には、データをバッチ単位で移動できる新しい方法があり、移行スクリプトの作成が簡単になるはずです。

Groovy 1.7のその他の新機能には、アノテーションとアサーションのサポートが強化されています。 GroovyConsoleと抽象構文木のインターフェースが改良され、GroovyScriptEngineが書き直されました。開発者はGroovy用のMicrosoft Windowsインストーラもリリースしました。 Grailsは最近更新された。

Apacheライセンスのもとで公開されているGroovyは、年1回更新されるという。バージョン1.8の計画には、パフォーマンスの改善が含まれています。 GroovyやRubyなど、動的にコンパイルされた言語で書かれたプログラムは、Javaなどの静的にコンパイルされた言語で、あらかじめコンパイルされたものよりも遅く実行されます。 Groovyは特に、パフォーマンスが遅いという批判を受けています。 Groovy 1.8のもう1つの優先事項は、ドメイン固有の言語の開発を支援するための追加機能強化です.Laforge氏によると、開発者はパフォーマンス向上のために1.7について多くの作業をしていませんでしたが、それはバージョン1.8の優先事項です。またはDSL。 DSLは、特定のタスクに合わせてキーワードをカスタマイズした言語です。 DSLを使用して、非プログラマが理解できるようにビジネスロジックを記述することができます。 Laforgeは、コンマやセミコロンなどの言語の文法的ノイズのいくつかを取り除くためにもっと多くの作業をしたいと言っていますが、比較的シンプルな構文と拡張性を考えれば、GroovyはDSLを構築するための基盤となります。

「Eclipseには、Eclipse、IntelliJ Idea、Netbeansなどのほとんどの主要なIDEを使用することができますが、開発者は一般的な英語のように見えるように、より洗練されたDSLを可能にする構文をさらに合理化する方法についていくつかのアイデアを得ました。 Groovyプログラムを書く。