16/10/18 09:55:22.14 hjBXWhrw.net
例えば次のような機能を実現する時はどのようにするのが良いというか、美しいというか、模範的といえるのでしょうか。
・ネットワークに接続されている時のみ、画面にメッセージを表示する機能
この機能を実現するために次の2つのメソッドを用意したとします。
また、この機能はプログラムの色々な場所から利用されるとします。
checkNetwork() - ネットワークに接続されているかどうかをbooleanで返す
createMessage() - 画面にメッセージを表示する機能
案1
createMessageを呼び出す前に、checkNetworkで判定を行う。
if( checkNetwork() ) {
createMessage();
}
案2:
createMessageメソッドの中でcheckNetworkメソッドを呼び出し、falseなら何もしないようにする
色々な場所からこの機能を利用すると考えると、
ソースコードがすっきりするのは案2だと思います。
でも、1つのメソッドの中であれもこれもと判定を行うようなつくりは盛り込みすぎてあまり良くないのかな?という気もします。
この様な場合、どの様にするのがよいでしょうか?