Spring Framework Advent Calendar 2011 part.10 英語圏の情報にアクセスする
Spring Framework Advent Calender の 10 日目です。今日は、機能紹介から少し離れて、Spring Framework に関する情報の集め方について整理してみます。
これは自分の所感なのですが、Spring 3.0 が登場する前あたりから、Spring の日本語情報がだんだん少なくなってきているなと感じています。昔の Struts もそうでしたが、すでにひととおり主要な情報が出尽くして、
- システムアーキテクチャにかかわるような基盤担当の人は、必要に応じて英語圏の情報を漁ったり、ソースコードを読んだりしている
- アプリケーションのロジックを中心に実装する人は、すでにある日本語情報で事足りる
という構図になっているのではないかな、と。
情報の集め方
英語圏の情報で私がよく利用しているのは、以下です。といっても公式サイトの情報ばかりですが。
私自身、オンラインマニュアルを隅から隅まで読んでいるというわけではなく、必要に応じてスポットで読むようにしています。
また、Eclipse からはライブラリーのソースコードを簡単に閲覧できますので、気になった部分のソースコードはよく読むようにしています。読むときはもちろん、静的なアプローチと動的なアプローチを複合的に用います。
- 静的なアプローチ ... ソースコードをじっくり読む
- 動的なアプローチ ... デバッガを仕掛けて、ステップ実行するなどして実際のプログラムの動きを読む
また、時間のあるときになんとなくライブラリーのソースツリーをざっと眺めてみて気になるクラスの Javadoc を読んだり...といったこともやります。Eclipse を使っているなら、あるライブラリーのクラスが含まれるパッケージの他のクラスを知りたいと思ったときは、右クリックのコンテキストメニューから Show In -> Package Explorer などで対象ライブラリーのソースツリーにジャンプできますので便利です。API ドキュメントについても、ドキュメンテーションコメントにマウスカーソルをホバーさせれば、HTMLタグが解釈された Javadoc のドキュメントが表示されますので、わざわざオンラインのAPIドキュメントにアクセスする必要もありません。
ある特定の解決したい問題を抱えている場合は、フォーラムやJIRAも有効活用しましょう。あるクラスの動作が想定通りにいかない、といったレベルで絞り込みができていれば、そのクラス名で検索を駆けるのが手っ取り早いでしょう*1。
これまでの Advent Calendar で紹介しているようなフレームワークのカスタマイズについては、オンラインマニュアルだけでは拡張ポイントがわからないこともあります。Spring と深くつきあっていくには、ソースコードを読むことは避けては通れないでしょう*2。
Spring Framework は、ちょっと異常とも思えるくらいに公式のドキュメントが (Javadoc, マニュアルともに) 充実しています。わからない英単語は 英辞郎 で調べながら読めば意外となんとかなります。私のような、英語が万年赤点の学生生活を送ってきた人間でもなんとかなっていますので、臆することはないと思います。
そして、わかったことを blog などでアウトプットして頂けると、後続の方がちょっとだけ幸せになれるかもしれません。