§Playモジュール
Play のコアはとても軽量な HTTP サーバで HTTP リクエストを扱える機能を提供していますが、それだけではありません。Play では追加の機能を Play モジュールを利用することで提供できます。
§モジュールとは?
Play では何がモジュールで何がモジュールでないかという厳格な定義はありません。モジュールは何かの手助けになるいくつかのヘルパーメソッドを提供するだけのただのライブラリになりますし、ユーザ管理のような複雑な機能を提供する重厚なフレームワークにもなります。いくつかのモジュールは Play に組み込まれており、その他は Play のコミュニティメンバーにより作成、メンテナンスされています。
いくつかのモジュールはコンポーネントを提供しています。例えばデータベース接続などのオブジェクトはリソースを表しています。これらのオブジェクトはライフサイクルをもっているかもしれないし、アプリケーションが開始されたときや停止したときに開始や停止をする必要があるかもしれないですし、キャッシュのような状態を保持するかもしれません。Play はこれらのコンポーネントにアクセスしたり利用したりする様々な機構を提供しています。コンポーネントは、モジュールから提供されるだけではなく、アプリケーション自身から提供される場合もあります。
§モジュールにアクセスする
新しい Play のプロジェクトを始めたときの初期段階に決定する必要があるのはモジュールによって提供されたコンポーネントにどのようにアクセスするかです。コンポーネントは依存性の注入の機構を利用してアクセスされます。これはあなたのコンポーネントからシステムのコンポーネントを参照するよりも、どのコンポーネントを必要としているのか宣言しておけば、システムがそれらのコンポーネントをあなたのコンポーネントに注入します。
Play のコアはいかなる特定の依存性注入方式にも依存しませんが、展開したての Play は Guice を提供しており、また、これを利用することを推奨します。以降のこのドキュメントでは Guice を選択したと想定しますが、他の依存性注入機構の例もあります。
依存性の注入については Scala もしくは Java でより詳しく読むことができます。
Next: Play で開発する
このドキュメントの翻訳は Play チームによってメンテナンスされているものではありません。 間違いを見つけた場合、このページのソースコードを ここ で確認することができます。 ドキュメントガイドライン を読んで、お気軽にプルリクエストを送ってください。