元ネタはこちら。 Tell, Don't Ask キャッチフレーズから非常に分かりやすい。 Tell, Don't Ask 言え!、聞くな理想的なオブジェクト指向設計においてはオブジェクトに対してただやって欲しいことを「言う」だけ。 こちらでどうればいいのか聞いたり、判断したりしないこと。 サンプルで見るとそれは明快。 悪い例 <% if current_user.admin? %> <%= current_user.admin_welcome_message %> <% else %> <%= current_user.user_welcome_message %> <% end %>これはいちいちcurrent_userがAdminかどうか、聞いて(判断して)からメッセージを送っているので、そこがダメ。 ただしくはただ言うだけにするべき。 良い例 <%= current_user.we