storageなどの命名規則
· 約3分
resource と storage というディレクトリをプロジェクト内で使用する際、それぞれの目的や役割を明確に区別することが重要です。以下にその使い分けについて説明します。
resource ディレクトリ
目的: プロジェクトで利用する静的ファイルや参照用のデータを格納。
特徴:
- 読み取り専用: プロジェクト内でコードが参照するだけで、通常は変更や更新を行いません。
- 静的データ: 設定ファイルやテンプレート、初期化用データ、ドキュメントなどを含む。
使用例:
- 設定ファイル (.json, .yaml, .ini など)
- テキストやCSV形式のリファレンスデータ
- 初期化用スクリプト
- 静的な画像、テンプレートファイル、またはUI用のリソース
- 翻訳ファイル (.po, .mo)
リソースの例:
project/
resource/
config.yaml # アプリケーションの設定ファイル
templates/
report.html # HTMLテンプレート
localization/
en.po # 英語翻訳リソース
ja.po # 日本語翻訳リソース
storage ディレクトリ
目的: プロジェクト実行中に生成・更新されるデータを格納。
特徴:
- 動的データ: 実行中に生成される一時データ、ログ、キャッシュなど。
- 読み書き可能: プログラムが動的にアクセスして変更するデータを含む。
使用例:
- ユーザーがアップロードしたファイル
- 一時データやキャッシュ
- 実行中に生成されるログファイル
- データベースのスナップショットやバックアップ
ストレージの例:
project/
storage/
logs/
app.log # 実行時のログファイル
uploads/
image1.png # ユーザーがアップロードした画像
cache/
temp_data.pkl # 一時的なキャッシュデータ
使い分けの基準
項目 | resource | storage |
---|---|---|
役割 | 参照用の静的データ | 実行時に生成・更新される動的データ |
ライフサイクル | 長期間変更されない | プログラムの実行中に生成され、更新または削除される |
アクセス頻度 | 主に読み取り専用 | 読み書きされる |
例 | 設定ファイル、テンプレート、翻訳データ | ログ、一時データ、ユーザーがアップロードしたファイル |