Java にはアノテーションがなかったとしましょう。Google Guice の DI フレームワークのようなものを設計するために思いつくアイデアは何ですか? 私はJavaにかなり慣れていないので、それ以外のことは考えられません
- Junit3が持っていたもの
- XML 構成
- ある種の内省?
注入する必要のある要素をどのように検査しますか? アノテーション以外の理想的な設定方法は何ですか?
Java にはアノテーションがなかったとしましょう。Google Guice の DI フレームワークのようなものを設計するために思いつくアイデアは何ですか? 私はJavaにかなり慣れていないので、それ以外のことは考えられません
注入する必要のある要素をどのように検査しますか? アノテーション以外の理想的な設定方法は何ですか?
Before annotations were part of the language, we had XDoclet. It exposes the same power of annotations, but via Javadoc tags. Old-school annotation-driven EJBs had tags like these:
/**
* @ejb.bean
* name="bank/Account"
* type="CMP"
* jndi-name="ejb/bank/Account"
* local-jndi-name="ejb/bank/LocalAccount"
* primkey-field="id"
*/
人気のあるPlexus IoC (Spring に類似) は、Commons Attributesを使用して、特別な javadoc コメントを介してメタデータなどの注釈を提供します。これにより、古い JVM (注釈をサポートしていない 1.5 より前のバージョン) で機能することができますが、注釈の利点の一部を享受することができます。
ところで、JUnit 3 にはこのようなものは何もありませんでした。テストの命名スキームを強制するだけでした。各テスト メソッドは、テストとして認識され、JUnit によって実行されるように、「testSomething」という名前を付ける必要がありました。これは、一般に「設定より規約」と呼ばれる手法です。