メインコンテンツまでスキップ

まとめ

クリーンコードの全体像

このドキュメントで学んだクリーンコードの原則をまとめます。

チェックリスト

コードを書く際に確認すべきポイント:

命名

  • 変数名・関数名は意図が明確か
  • 検索可能な名前を使っているか
  • 命名規則(camelCase、PascalCase、UPPER_SNAKE_CASE)に従っているか
  • 省略形を使わず、完全な単語を使っているか

関数

  • 関数は1つのことだけを行っているか
  • 引数は2つ以下か(多い場合はオブジェクトを使用)
  • 副作用を最小限に抑えているか
  • 早期リターンでネストを減らしているか

TypeScript

  • anyを使用していないか
  • 適切な型アノテーションがあるか
  • unknownと型ガードを活用しているか
  • ユーティリティ型を適切に使っているか

クラス設計

  • クラスは単一の責任を持っているか
  • 継承より合成を選んでいるか
  • インターフェースを使って抽象化しているか
  • 高凝集・低結合を意識しているか

全般

  • コードは自己文書化されているか
  • 不要なコメントは削除したか
  • マジックナンバーは定数化したか
  • テストしやすい設計になっているか

継続的な改善

// クリーンコードは一度で完璧にはならない
// 継続的なリファクタリングが重要

// ボーイスカウトの原則
// 「来た時よりも美しく」
// コードに触れたら、少しだけ改善して去る

const boyScoutRule = {
principle: "来た時よりも美しく",
action: "コードに触れたら、少しだけ改善して去る",
benefit: "コードベースは徐々にクリーンになっていく"
};

最後に

クリーンコードの目的は、読みやすく、保守しやすく、変更に強いコードを書くことです。

覚えておくべきこと
  1. コードは書く時間より読む時間の方が長い → 読みやすさを最優先に
  2. 将来の自分もコードの読者である → 6 ヶ月後の自分が理解できるコードを書く
  3. 完璧を目指すより、継続的に改善する → 小さなリファクタリングを積み重ねる
  4. TypeScript の型システムを味方につける → 型でバグを防ぎ、ドキュメント代わりにする
  5. 原則は指針であり、絶対のルールではない → 状況に応じて判断し、チームと合意を取る

💡 クリーンコードは技術であり、習慣であり、マインドセットです。日々の実践を通じて、少しずつ身につけていきましょう。


このドキュメントは「クリーンコード入門」をTypeScript向けに再構成したものです。