少しずつインクリメンタルにコーディングすること。そうすれば、開発が進むにつれてコードが洗練され、構造化されていくことに気づくだろう。インクリメンタルにコードを書いて、テストする。この継続的なフィードバックが、コードが過剰に複雑になったり、散らかり放題になることを防いでくれる。
関数やクラスを文書化するときには、「このコードを見てビックリすることは何だろう? どんなふうに間違えて使う可能性があるだろう?」と自分に問いかけるといい。基本的にはコードを使うときに直面する問題を「前もって」予測したい。
読みにくいコードがあれば、そこで行われているタスクをすべて列挙する。そこには別の関数(やクラス)に分割できるタスクがあるだろう。それ以外は、関数の論理的な「段落」になる。タスクをどのように分割するかよりも、分割するということが大変なのだ。
StrongParametersとは、Mass Assignment機能を利用する際に起こり得る脆弱性へ対抗する手段の1つです。Mass Assignmentとはモデルの生成や更新の際に、以下のようにRubyのハッシュを使って一括で属性を設定できる非常に便利な仕組みです。
Active Jobは非同期実行処理機能を提供するライブラリで、Rails4.2で追加されました。Active Jobを使うことでさまざまなバックエンド(ジョブを管理実行するインフラ)上で実行する非同期処理を統一的に利用できます。