• 出典
  • 説明
    • 認知負荷とだいたい同じ
    • 脳内あるいは心の中にスタックがあって、
      • そこに情報をスタックしていくと
        • 認知負荷が高くなって大変だよね
    • だから精神的スタックを使わない読みやすいコードを書こう
      • 例えば
        • 早期リターンしよう
        • コードの循環的複雑度を下げよう
        • スコープを最小化しよう
        • 「全部読まないとわからないコード」のかわりに、
          • 左上をパッと見するだけですぐわかるコードにしよう
        • ほか多数
    • 精神的スタックを使うコードはETC原則に違反しているということでもある
      • 全体を読まないと(精神的スタックに全体を積み込まないと)影響範囲がわからなくて変更できないコードなら、それはETC原則違反だ
        • ※大前提として、読まずに変更してバグる、のは進め方の誤りです。読みましょう
      • 最小限の要点を読むだけで変更できるコードにリファクタリングしよう
        • 読みやすいコードにリファクタリングしよう

持論

  • 最重要概念の一つ
    • あらゆる活動に関連する
  • 認知負荷に比べて、精神的スタックのほうが具体的でイメージしやすい
    • といいつつ認知負荷という言葉もガンガン使っていく
    • 使い分けの基準はふわっとしている
      • 認知負荷ほうが人口に膾炙しているから広く使いやすいというのはある
  • 精神的スタックに情報を積み込むことは暗黙に認知負荷を高め、
    • 疲労の原因となるだけでなく、
    • 優れたアイデアの邪魔をしたり、
    • 効率低下を招いたり、
    • 広い悪影響がある