マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Apache Groovy

【OSS情報アーカイブ】Apache Groovy

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「Apache Groovy」とは

「Apache Groovy」基本情報

■概要

Apache Groovy(アパッチグルービー)とは、Javaプラットフォーム用のJava構文に準拠したオブジェクト指向プログラミング言語です。

■基本説明

Apache Groovyは、Javaと密接なつながりがありJava構文に準拠しているため、Java開発者が多くの学習コストをかけることなく容易に移行できる特徴があります。

Javaプログラムとのスムーズな統合が可能で、「実行時およびコンパイル時のメタプログラミング」「スクリプト機能」「ドメイン固有言語作成」など追加的な機能を備えています。

■経緯

・2003年 初版リリース

主な特徴

■Java準拠言語

Javaプラットフォーム

Apache Groovyは、Javaプラットフォームのプログラミング言語とスクリプト言語の両方として使用できます。Java仮想マシン(JVM)バイトコードにコンパイルされ、他のJavaコードやライブラリとシームレスな相互運用が可能です。

高機能

「クロージャ」「ビルダー」「関数型プログラミング」「型推論」「静的コンパイル」など、Javaを補完する高度なプログラミング機能を提供します。

アプリケーション統合

Apache Groovyは「シンプルなコード実行」から「完全な統合キャッシングとコンパイラのカスタマイズ」まで可能で、Javaアプリケーション実行時に自身を統合するいくつかの方法を提供しています。Javaからも同じ統合メカニズムを使用できます。

「サードパーティ製Javaライブラリ」とのシームレスかつ透過的な相互運用も可能とします。

Java言語との違い

Apache Groovyは、Java開発者にとって非常に移行しやすい言語ですが、いくつかJavaとの相違点があります。
・デフォルトインポート
・マルチメソッド
・ARM(自動リソース管理)ブロック
・ラムダ
・プリミティブ/ラッパー など

→Apache Groovy →Differences with Java

■豊富なエコシステム

Apache Groovyは、以下のような豊富なエコシステムを提供しています。
・Webフレームワーク
・デスクトップアプリケーションフレームワーク
・リアクティブアプリケーションフレームワーク
・GUI構築
・ビルドツール
・並行/非同期/並列ライブラリ
・コード解析
・テストフレームワーク など

→Apache Groovy →Ecosystem

■サポートIDE

多くのIDE(統合開発環境)やコードエディタがGroovyをサポートしています。
・Android Studio
・Atom
・Eclipse
・IntelliJ IDEA
・JDeveloper
・NetBeans
・Visual Studio Code など

補足情報

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Kotlin」「Scala」など。

■オフィシャルサイト

オフィシャルサイト

→Apache Groovy(The Apache Groovy programming language)

ライセンス情報

Apache Groovyのライセンスは「Apache License 2.0」です。

詳細について、こちらを参照ください。
→GitHub →groovy/LICENSE

ダウンロード

→Apache Groovy →Download

 

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【デジタル寺田の3分用語解説】「 ESG経営 」とは?🌱

デジタル寺田の3分用語解説

2024.10.21

【デジタル寺田の3分用語解説】「 ESG経営 」とは?🌱

「 ESG経営 」とは、環境・社会・ガバナンスに配慮し、持続可能な成長を目指す経営スタイルです。企業価値の向上だけでなく、ブランドイメージの強化、優秀な人材の確保、経営リスクの軽減など多くのメリットがあります。

【デジタル寺田の3分用語解説】「 マルチモーダルAI 」とは?🤖

デジタル寺田の3分用語解説

2024.10.21

【デジタル寺田の3分用語解説】「 マルチモーダルAI 」とは?🤖

「 マルチモーダルAI 」とは、テキストや画像、音声など様々なデータを統合して処理する技術です。AIの進化により、自動運転や医療、チャットボットなど多くの場面で活用されています。課題解決が今後の発展の鍵です。

【デジタル寺田の3分用語解説】「 3PL 」とは?🚚

デジタル寺田の3分用語解説

2024.10.21

【デジタル寺田の3分用語解説】「 3PL 」とは?🚚

「 3PL 」とは、自社の物流業務を外部の専門企業に委託し、コスト削減や生産性向上を図る手法です。特に人手不足や労働問題が深刻な現代では、3PL の導入が重要であり、物流業務の効率化や法令遵守にも役立ちます。専門知識を活用することで、企業は物流に関わる負担を軽減し、本業に集中できるようになります。