トップページ⇒tech
1001コメント266KB

クラス名・変数名に迷ったら書き込むスレ。Part20

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2011/07/29(金) 21:32:01.00
クラス名、変数名のつけ方に悩んだら書き込むスレです。

命名規則や設計の善し悪しについて議論するのは基本的に禁止。

前スレ
クラス名・変数名に迷ったら書き込むスレ。Part19
http://hibari.2ch.net/test/read.cgi/tech/1293201229/
0647デフォルトの名無しさん2011/12/25(日) 01:07:06.20
>>643
やっぱりminSize/maxSizeを持たせるのなら、メソッド名は単純にsetSizeとかsetCurrentSizeとすべき。
メソッド名に値が規制されることを盛り込むセンスはちょっと変な気がする。
繰り返しになるけど。
0648デフォルトの名無しさん2011/12/25(日) 01:52:45.55
>>630
案は俺 setClampedSize を提案したが、よく考えてみれば、
「設定した値がクランプされて格納される」ことをメソッド名で示すのは難しいな
setClampedSize じゃ、クランプ済みのサイズを設定しろ、と言っているように見える

俺も >>647 に同意見だ
メソッドを使うプログラマに「して欲しいこと」はメソッド名に織り込めるが、
メソッドを呼び出した結果「内部状態がどう変化するか」は
メソッド名に入れるべきじゃないような気がする

その代わりに、「どのような意味・役割を持つのか」をクラス名に折り込み、
Widget クラスからは分離させた方が良いのではないか?

具体的には、ClampedSize などの名前のクラスを作り、
設定した値がクランプされて保たれる役割をこのクラスに担わせ、
Widget クラスはこの ClampedSize クラスのインスタンスを保持する
0649デフォルトの名無しさん2011/12/25(日) 02:02:24.87
範囲外の値がセットされた場合どうなるかは
普通コメントやドキュメントに書かれるね
■ このスレッドは過去ログ倉庫に格納されています