check_xxx がなんでダメなのか
どうも check_xxx というメソッド名は辞めよう委員会のやましろです。
追記:hoge_managerとかfoo_processorとか辞めよう委員会の委員でもあります
ダメやダメや。と言ってたら「なんでダメなん?」って聞かれたので例を書いてみました(ミスってアノニマスで作っちゃった)
- check_userという名前では、何をチェックするかがわかりません。
- 一個のメソッドの中で複数のことをするのは辞めましょう
- 予期しないexitとか…
実は、check_xxx がダメな理由って、最初のだけだけど、
check_xxx 書くやつ、絶対他のこともそのメソッドでやるんだよなー。
まぁ、「絶対的に正しいコード」なんてないですけど、
check_xxx はいただけないですね。
この例だったら、中で余計なことしてなくて、
check_user_x_stateぐらいだったらギリ許す。
でもそれだったら is_valid_x_stateでいいですよね。is_valid_user_about_x とか?
英語力ないんですけど、他の人も英語力ないと思うので、だいたい伝わればいいです。
2個目のコードは修正例です。
このように、メソッド分割などして、
修正する時間がない場合、メソッド名をcheck_userから
check_user_x_value_and_if_invalid_update_x_and_redirect
ぐらいのメソッド名にしたほうがいいとおもいます。
いや、どうだろうw長いw