コーディング標準とベストプラクティス
すべてのプロジェクトに適用される汎用的なコーディング標準。
コード品質の原則
1. 可読性優先
- コードは書くよりも読まれることが多い
- 明確な変数名と関数名
- コメントよりも自己文書化コードを優先
- 一貫したフォーマット
2. KISS (Keep It Simple, Stupid)
- 機能する最もシンプルなソリューションを採用
- 過剰設計を避ける
- 早すぎる最適化を避ける
- 理解しやすさ > 巧妙なコード
3. DRY (Don't Repeat Yourself)
- 共通ロジックを関数に抽出
- 再利用可能なコンポーネントを作成
- ユーティリティ関数をモジュール間で共有
- コピー&ペーストプログラミングを避ける
4. YAGNI (You Aren't Gonna Need It)
- 必要ない機能を事前に構築しない
- 推測的な一般化を避ける
- 必要なときのみ複雑さを追加
- シンプルに始めて、必要に応じてリファクタリング
TypeScript/JavaScript標準
変数の命名
// PASS: GOOD: Descriptive names
const marketSearchQuery = 'election'
const isUserAuthenticated = true
const totalRevenue = 1000
// FAIL: BAD: Unclear names
const q = 'election'
const flag = true
const x = 1000
関数の命名
// PASS: GOOD: Verb-noun pattern
async function fetchMarketData(marketId: string) { }
function calculateSimilarity(a: number[], b: number[]) { }
function isValidEmail(email: string): boolean { }
// FAIL: BAD: Unclear or noun-only
async function market(id: string) { }
function similarity(a, b) { }
function email(e) { }
不変性パターン(重要)
// PASS: ALWAYS use spread operator
const updatedUser = {
..…