Skip to content

コード構成のベストプラクティス

機能/ドメインによる構造化(推奨)

特定のビジネス機能に関連するファイルをまとめます。これにより、AIにより良いコンテキストが提供され、コードの凝集性が向上します。

txt
src/
├── features/  # または domains, modules, bounded contexts
│   ├── users/
│   │   ├── user.controller.js  # HTTPリクエストの処理
│   │   ├── user.service.js     # ビジネスロジック
│   │   ├── user.model.js       # データモデル/スキーマ
│   │   ├── user.routes.js      # APIルート
│   │   ├── user.dto.ts         # データ転送オブジェクト(TS使用時)
│   │   └── user.test.js        # 機能テスト
│   │
│   ├── products/
│   │   └── ... (同様のファイル)
│   │
│   └── orders/
│       └── ... (同様のファイル)

└── shared/  # 共通ユーティリティ、ミドルウェア、基本クラス
    ├── middleware/
    ├── utils/
    └── config/
  • 避けるべきこと: 主に技術レイヤー(controllers/, services/, models/)による構造化は、機能のコードを分散させてしまうため避けます。

VitePressで構築