開発環境を作るときに気を付けてること

これまで仕事でJavaをやるときはほぼ100%、eclipseを使ってきました。
数少ないこれに当てはまらないケースはと言えば、エディタとjavac(笑)

さて最近は自分でPG書くより人に書いてもらう機会の方が多くなり、開発環境を作って提供する機会が増えました。

環境を作る上で気を付けているのは「かんたん」であること。
中でもセットアップと実行のかんたんさを重視しています。

過去に経験したJavaの開発環境には、決しておおげさでなく、セットアップに一日以上かかるものが存在しました。そして微妙に失敗しててアプリが動かず、またやり直すときがありました。
人の出入りが激しいプロジェクトの場合、この時間的損失はイヤなものです。人の出入りがなくともイライラして精神衛生によくありません。

なので開発環境は「このファイルをここにコピーして終わり」というくらい簡単にしておきたいし、実行は「このクラスを実行するとトップ画面が表示される」というくらいに簡単にしておきたい。

また環境を簡単に作れるようにしておかないと、保守に困ります。eclipseにプロジェクトをインポートしていざ動かそうと思ったら「××プラグインがないためにビルド出来ませんでした」となるのはたまりません。そもそもプラグインがないときはこんなに分かりやすいエラーメッセージは出ません。実行すら出来ないシステムをどうやって保守するんでしょう?

かんたんさを得るには依存の範囲を狭くするのが大事だと思います。eclipseで言えば、プロジェクト内に全ての依存を閉じ込めてしまうようにします。例えば依存する全てのJARファイルを全てプロジェクト内に配置するとか。
ちなみにこれをやるとプロジェクト自体のサイズが大きくなるのが若干辛いですが、eclipse自体を配布するのに比べればだいぶマシ。ま、eclipse自体を配布することもままありますが。

経験した実プロジェクトではなかなか理想通りにはいかなかったのが正直なところです。もっと勉強と検討を重ねて、よりかんたんな開発環境を発明したいものです。