-セマンティックリポジトリ

ソフトウェア開発環境の中心に何をすえるかは人によって考えも違うだろうし、いきなりこんな乱暴な切り出しでは、用語の定義すら受け取る人によって違うことになるとは思います。そこをあえて丁寧な作業を省いて決め付けてみます。ソフトウェア開発環境の中心にはリポジトリがある、と。ここでいうリポジトリとは、ソースコードのバージョンコントロールをするアレで、SubversionとかCVSとかでサービスするアレ。
リポジトリにはソースコードに限らず、文書や画像、音声などさまざまコンテンツを格納できますから、格納されているものは変更差分の管理がされている以外は単にそこにおかれているだけのことです。ここで考察。リポジトリの格納されているJavaソースコードリポジトリの中では単なるファイル。これをチェックアウトしてコンパイルをかけるとJavaクラス(など)と認識され文法解釈されて、エラーが発生したり、うまく他のソースコードと関連付けられたりする。でもコンパイル環境が整わないと、ずっと単なるテキストファイルなのです。
ここに、リポジトリの段階で常にセマンティックを持ったものがあったらいいのではないかと思いました。リポジトリ内に静的に存在するだけで、そのJavaソースコードがどういった状態なのかがわかるといいのではないかと思う。リポジトリWEBビューワーの上で表示したら、警告の黄色波線がひかれていたりしてね。リポジトリ内にビルド環境設定の一切があれば、整えなくともCIが実現され、リポジトリ内においてそのソースコードがビルド可能なのかどうかが目視できる、という。
  もうちょっと考えよう。