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/ フォルダ内に、
プロジェクトの規約(コーディング規約、テスト要件など)を全て満たした、新しいコードとしてゼロから書き直してください。