タグ

2018年8月27日のブックマーク (1件)

  • Railsのcontrollerにおいて、メソッド外で初期化したインスタンス変数を参照すべきでない理由 - Qiita

    Railsのcontrollerにおいて、メソッド外で初期化したインスタンス変数を参照すべきでない理由RubyRails 背景 Ruby on Rails を利用した中規模以上のプロジェクトにおいて、 Fat な controller を解消するために、処理を分割することはしばしば行われます。例えば、サブメソッドへの一部処理の切り出し, before_action, concern への処理の委譲が行われます。しかし、処理を分割する際に、メソッド外で初期化したインスタンス変数を参照してしまうような例を時々見かけます。 このような実装は、一見DRYでシンプルに見えてしまうかもしれませんが、実際には開発効率の低下につながったり、バグの原因になる可能性が高くなります。 この記事では、メソッド外で初期化されたインスタンス変数を参照することの危険性と、それを避けた方が良い理由を考察してみたいと思いま

    Railsのcontrollerにおいて、メソッド外で初期化したインスタンス変数を参照すべきでない理由 - Qiita
    rryu
    rryu 2018/08/27
    コントローラが状態を持つと大体良くない感じになる。おおむねidパラメータを取るコントローラでbefore_actionでモデルを取ってくるみたいなのも自動で取ってくるから大丈夫と確認する労力の方が大きいと思う。