2011-07-29 6 views
1

は、文のように読み込むAPIのスタイルの名前はありますか?例えば、グーグル-Guiceの中EasyMock/GuiceのスタイルのAPI

bind(TransactionLog.class).to(DatabaseTransactionLog.class); 

かでEasymock

expect(mock.voteForRemoval("Document")).andReturn((byte) 42); 

私は私が欲しいすなわち、 'Googleのスタイル' APIと呼んでいるものに似たAPIをプログラミングしたいですそれが見えるように:

RowStyle(RED_BACKGROUND).when(PROP_ERROR_MESSAGE).notNull(); 

、それは名前を持っている場合、APIのこのタイプの長所/短所を知りたいのですが、どのようにあなたがimplementiに行きますかそれを。

+1

http://stackoverflow.com/questions/1622662/creating-api-that-is-fluentを参照してください。 – ddso

答えて

2

これらのAPIは、「流暢API」と呼ばれ、私たちの時代に何人かは、「内部DSL」それらを呼び出すが、第一項はAFAICTより広く使用されている(と古い正しい用語です)。私にとって

1

それらの操作(スタイル()、とき()、notNullを())のシーケンスが厳密に定義されている場合、これはのみ動作します。 notNull()の後にwhen()を呼び出すことができれば、これは何の意味もありません。

通常、あなただけのいくつかのパラメータを持つメソッドを定義します。

public void rowStyle(String condition, boolean notNull) 

が、これらの追加の呼び出しは、オプションのパラメータを指定するための良い方法です。

ので、+オプションのパラメータを持っている場合は、 - あなたがそれらを持っていない場合。 +厳密に定義された呼び出しシーケンスの場合、 - そうでない場合。

関連する問題