コンテンツにスキップ

05. Sandboxフォルダ

Sandbox/(または sandbox/)フォルダは、プロジェクトの公式なソースコードとは別に、実験的なコードやアイデアの試作(プロトタイピング)を行うための、自由な「砂場」として利用します。

Sandboxのルール

Sandbox/ フォルダ内のコードは、本番環境の品質基準を満たす必要はありません。

  • コンパイルエラーが含まれていても構いません。
  • テストコードがなくても構いません。
  • コーディング規約に厳密に従っていなくても構いません。
  • .gitignore に追加し、バージョン管理の対象外とすることも推奨されます。

Sandboxフォルダの主な利用シーン

  • 新技術の検証 (PoC - Proof of Concept): 新しいライブラリやフレームワークを導入する前に、その実現可能性や使い勝手を検証するための簡単なコードを記述します。

  • パフォーマンス比較とベンチマーク: 複数のアルゴリズムや実装方法を試し、どちらが効率的かを測定するためのベンチマークコードを配置します。

  • API設計の試作: 新しいAPIエンドポイントやライブラリのインターフェースを設計する際に、その使いやすさ(APIエルゴノミクス)を確認するための、ダミーの呼び出しコードを作成します。

  • 再現コードの作成: 特定のバグを再現するためだけの、最小限のコードを隔離された環境で作成し、問題の切り分けに利用します。

  • 学習と実験: プロジェクトで使用されている技術要素について、個人の理解を深めるための学習用コードを自由に記述する場所として活用します。


構成例

Sandbox/ フォルダの構成に厳密なルールはありません。通常は、実験したいテーマごとにサブフォルダを作成します。

Sandbox/
├── 2023-10-26_NewLibraryPoC/   # 新ライブラリの技術検証
│   ├── Program.cs
│   └── NewLibraryPoC.csproj
│
└── FeatureX_Prototype/         # 機能Xのプロトタイプ
    ├── index.html
    └── app.js

本番コードへの直接マージは禁止

Sandbox/ フォルダ内のコードを、直接 Src/ フォルダにマージすることは原則として禁止です。

Sandboxでの実験が成功し、その成果を本番コードに反映させたい場合は、必ず Src/ フォルダ内に、 プロジェクトの規約(コーディング規約、テスト要件など)を全て満たした、新しいコードとしてゼロから書き直してください。