|
応募者は「今日できることは今日やる」というコンセプトを実現するJavaフレームワークの開発基盤Irenkaを提案します。Javaは動的プログラムローダと実行時リフレクション機能を備えた言語で、そのような機能を利用したフレームワークが数多く存在します。対して、Irenkaはコンパイラの技術を基盤に「明日(運用時/実行時)」ではなく「今日(開発時/コンパイル時)」に様々な操作を行うためのツールキットを提供し、これを用いて開発されたフレームワークに性能、可読性、早期テスト可能性などのイニシアチブを与えます。
近年のソフトウェア開発はプログラミング言語のプラクティスやフレームワークなどに、さまざまな「掟」が存在しています。これらの「掟」は正しく履行することによりプロダクトの品質を向上したり、フレームワークの機能を100%利用できるようになったりしますが、習得に一定のコストを要し、また、自動化してもコスト対効果が低い場合があります。Javaというプログラミング言語に的を当てると、上記のような「掟」は多数あるものの、それらを自動化すための機構は完全に整備されているとはいえません。さらにその「「掟の履行を自動化する機構」を開発するための基盤」は未踏の分野であると考え、その隙間を埋めるプロダクトとしてIrenkaを開発します。IrenkaはJavaプログラムの構造を分析し、その構造に対してプログラム変換や警告などの定められた「掟」を履行します。これらの「掟」はユーザが容易に追加することができ、各プロジェクトの要求に合ったプラクティスの自動化を支援します。
|