関数型プログラミング言語Haskell Part13
■ このスレッドは過去ログ倉庫に格納されています
0327デフォルトの名無しさん
2010/12/07(火) 12:54:03一概には言えないが、関数型言語の関数(function)は、
手続き型言語の手続き(procedure)とは違って静的なものなので、
たいていは動詞ではなく名詞を使うように頭を切り換えると良い場合が多い。
だから、「get」「put」「set」「conv(ert)」などのような動詞が
なるべくなら接頭辞として付かないような方向で考える。
また、修飾語句はできる限り引数の型で表した方がスッキリする。
例えば「n番目の」というのは標準ライブラリを見ても関数名には無いと思う。
同じ役割の関数で番号指定できるものとできないものが有るなら、
(必要なら)私なら関数名の後ろにNを付けるか付けないかで区別するが、
その前にそもそも番号指定版だけで済ませられないか考える。
「〜の中の」とか「〜の」というのも、まず引数の型で表すことを考える。
「〜」に当たるものが色々あるのなら、それらをひとつの型クラスで表し、
その型クラスに対する「の中の」関数だけの状態にして、
関数名には「〜の中の」という言葉は入れないようにする事を考える。
「〜の中にある〜の中の」というように入れ子状に続くのは論外。
この場合は関数をいくつかに分けて、ひとつの関数で「〜の中の」は
多くても一つだけの状態にするように考える。
ただ、分けたそれぞれの関数が独立では使われず、
いつも「〜の中にある〜の中の」という状態で使われる場合は、
関数を分けずにひとつの関数で表して、
関数名としては一番外側の「〜の中の」だけを表した方がいい。
しかしこの場合、そもそも設計がおかしいことの方が多いが。
■ このスレッドは過去ログ倉庫に格納されています