Spring Rooとは?
Enterprise Java開発のためのRADツール。Roo ShellというCUIをインターフェースとしており、hintコマンドを使って対話的に開発ができる。
hintコマンドを打つとプロジェクトの状態を見て何をしたいか推測してくれて、次にやるべきことをsuggestしてくれる。suggestされたコマンドを入力すると、自動で設定ファイルやソースコード、テストコードを生成してくれる。
もちろん、Roo Shellを使わずにいつも使っているエディタからコードを書いてもいい。RooはRound-tripをサポートしているため、ソース変更を自動検知して影響のありそうなところをいい感じに変更してくれる。
Rooによって生成されたプロジェクトは、Spring, Hibernate, Tiles, AspectJ, Maveなどの標準的なJava技術によって構成される。しかも必要な機能を必要になったときにだけ自動的にインポートしてくれる。
Rooはビジネスロジックを書くことは出来ないが、インフラまわり、設定ファイルの管理を自動で行ってくれる便利なやつ。言い換えれば、開発者はビジネスロジックの実装に集中できるということ。
読んだドキュメント
分かりやすかったドキュメント類のまとめ。それぞれ何が書いてあるかメモしておく。1. Spring Roo公式ガイド Chapter 1
Rooの概要、インストール方法、10分で出来るチュートリアルがある。
2. Spring Roo公式ガイド Chapter 2
Rooコマンドによって何がなされる(何が生成される)かを説明している。
新たに以下の機能を説明。
- 複数のEntity定義とEntity間のRelation定義の方法
- Spring Securityを用いたアクセスコントロールの方法
- IDEへのインポート方法
- Look and Feelのカスタマイズ
ソースからビルドする方法が載っている。最新の機能を使いたかったり、Add-onを書きたかったりする場合に必要。
Tutorialは公式ガイド(Chapter 1, 2)のものと似たような感じなので特別やる必要はないと思う。
Tutorialは公式ガイド(Chapter 1, 2)のものと似たような感じなので特別やる必要はないと思う。
読んだソースコード
1. $ROO/samples/clinic.roo基本的な機能が一通り実装されている。
- トップレベルパッケージ配下の構成(web, domain, reference)
- finder
- 国際化機能
TODOs
- data sourceの設定とかreverse engineeringからの開発とかについて説明したサイトをやる。
- IBMのサイトの第二回目おもしろそうだからやる。
- 公式リファレンスをChapter 6 までよむ。
- $ROO/samples/配下のサンプルを動かしながらソース読むとよさそう。
課題
- TutorialのSeleniumのテストが通らない。(同じ現象がForumにも上がっていたけど未解決)