
Groovyに触ってみよう
Andrew Glover (aglover@vanwardtechnologies.com)
CTO, Vanward Technologies
2004/9/25
主な内容
|
Javaエンジニアであれば、Groovyについて耳にしたことがあるだろう。James StrachanとBob McWhirterという2人の著名なエンジニアによって生み出されたGroovyは、Java APIベースのアジャイルな開発を実現するスクリプト言語だ。2004年3月にはJSR(Java Specification Request)−241として認定され、現在は標準化作業の初期段階にある。Javaそのものに対する見方やその位置付けを根底から覆すものという評価さえある。
Groovyの標準化作業を始めるに当たり、その責任者の1人Richard Monson-Haefelは、同言語を支持する理由として「アジャイルな開発言語をJavaプラットフォームに追加するための機が熟した」と説明している。Javaに移植されたスクリプト言語はいくつか存在するが、Groovyがそれらとは異なるのは「Javaのためのスクリプト言語」である点だ。さらに同氏によれば、Groovyの開発者たちは標準化に際して「Javaは単なる言語ではなく、複数の言語が共存する基盤となるプラットフォームである」という考えを示したという。
alt.lang.jreコラムの第2回は、このGroovyについて取り上げる。まずは、「なぜまた新しい言語が必要か」という素朴な疑問に答え、続いてGroovyの卓越した能力についてコード例を交えながら概観しよう。
| なぜまた新しい言語が必要か |
本コラムの第1回で説明したとおり、Java実行環境で動作するスクリプト言語や開発言語はGroovy以外にもいくつか存在する。例えばJythonやJRuby、Smalltalkなどがそうだ。そのため、「これらの言語とJavaを組み合わせれば迅速な開発が可能なのに、なぜまた新しい言語を学ぶ必要があるのだろうか」といぶかるITエンジニアも少なくないはずである。
しかし、そうした心配は無用だ。Groovyがほかのスクリプト言語と異なる点は、Javaの文法や標準ライブラリをそのまま引き継いでいるため、新たな言語の習得が不要なことである。JythonやJRubyはそれぞれPythonとRubyの文法や機能をベースとしているが、Groovyは「さらに使いやすくなったJava」という感覚で使える。
またJythonなどの言語は、ベースとなるスクリプト言語のライブラリに依存することが多い。一方Groovyでは、Java開発者におなじみのライブラリや機能を、そのままアジャイルな開発環境で利用できる。また以下のようなGroovyのメリットをもってすれば、「幅広いニーズに対応し、あらゆる応用が可能なコードの開発」というアジャイル開発の信条も十分に実践可能となる。
- コンパイルが不要
- 動的な型付けが可能
- 文法上の制限を緩和
- 通常のJavaアプリケーション内でGroovyスクリプトを実行可能
- シェルインタプリタを提供
こうしたメリットによって、Groovyは、Javaの初心者でもベテランでも極めて簡単に学習し利用できる言語となっている。以降のセクションでは、これらのメリットについてさらに詳しく解説したい。
| 1/4 |
|
INDEX |
||
| Groovyに触ってみよう | ||
| Page1 なぜまた新しい言語が必要か |
||
| Page2 javacが不要 動的型付けの威力 |
||
| Page3 文法は自由自在 |
||
| Page4 Groovyのその他の特徴 |
||
developerWorks バックナンバー
| Java Solution全記事一覧 |
TechTargetジャパン
- 並列分散処理の常識をHadoopファミリから学ぶ (2012/2/8)
並列分散処理の課題やHadoopの長所/短所、そして短所を補うHadoop関連プロジェクトの構成や概要などを簡単に紹介 - WebLogicサーバ最新版「12c」の気になる4つの特徴 (2012/1/31)
久々にメジャーアップグレードしたJavaアプリケーションサーバについて、製品担当者に軽量インストーラなどの特徴を聞いた - GitHubをもっとソーシャルに使いこなすための7つ道具 (2012/1/23)
ソースコードホスティングのGitHub周辺で便利な新サービスが続々登場しているので、まとめて紹介しよう。特に連動クラウド「fluxflex」が注目だ - 新キャラ登場!スクラムやるならRedmineとALMinium (2011/12/26)
「黒板を“かんばん”にしてたら先生に怒られた(T_T)」「管理はPC内でやればいいのよ」「承知しました」
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
