【要約】【Ruby】ブロックパラメータのitは多用しない方がよい、という私見 [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
- ・『it』の使用による、変数の意味の不透明化。\n・読み手が『it』の正体を推論する認知負荷の増大。\n・書き手のタイピングコスト削減が、読み手の理解コスト増大に転嫁される構造。\n・文脈に依存するため、コードを通じた一方通行のコミュニケーションに誤解が生じるリスク。
// Approach
- ・原則として、明示的なブロックパラメータ名を使用する。\n・データの内容を反映した変数名を選択する。\n - 例:
|service|や|id|を使用。\n・『it』の使用範囲を以下の場面に限定する。\n 1. irbやrails consoleでの対話的作業。\n 2. 自分のみが利用する使い捨てスクリプト。
// Result
- ・コードの意図が明確化。\n・読み手の理解コストを低減。\n・コードを通じたコミュニケーションにおける齟齬を防止。\n・「短さ」よりも「読み手への優しさ」を優先したコード品質の実現。
Senior Engineer Insight
> 大規模なシステム開発において、コードは書く時間より読まれる時間の方が圧倒的に長い。\n『it』のような糖衣構文は、文脈が極めて限定的な場合にのみ許容すべきである。\n書き手のわずかな手間を惜しむことは、チーム全体の認知負荷を増大させる。\n認知負荷の低減は、レビューコストや保守コストの削減に直結する。\n「短さ」を「美しさ」と履き違えるのは、プロフェッショナルとして極めて危険である。