ロバートC.マーティンの書籍「クリーンコード」は、というメソッドは、1つのことを行うべきだと言います。例えば、私はinitialize()とplay()の2つのメソッドを持っています。メソッドを書くための適切な方法
initialize()は、play()が呼び出される直前に呼び出される必要があります。
play()メソッドは、自分のコードで何百回も呼び出されます。
アプローチ-1:私は3つのアプローチ見ることができ、プレイ前に
コール初期化を()()、これは数百回にわたり繰り返すことができます。
initialize();
play();
...
initialize();
play();
...
アプローチ-2:play()メソッドの内部
入れの初期化()。しかし、これは "一つのことをする"アプローチに反するだろう。
void play() {
initialize();
...
}
アプローチ-3:
私はinitializeAndPlay(と呼ばれる別のメソッドを記述する必要があります)。
void initializeAndPlay() {
initialize();
play();
}
これを行うには、他のより良いとクリーンな方法はありますか?
となるだろうクラスを正しく使用するために再生する前に初期化を呼び出すには、確実に1ではありません。 –
@AndyTurner、true。これは時間的結合と呼ばれます。 :) –
'play'を正しく実行するために' initialize'が必要な場合は、正しく第2の方法を使います。 – Blobonat