ソフトウェアのディレクトリ構造仕様
ソフトウェア開発の仕様
まず、なぜ良いのディレクトリ構造を設計する必要がありますか?
1.高可読性:このプロジェクトの人々のためのコードに慣れていない、1は、起動スクリプトを知られているディレクトリ構造、テストディレクトリ、コンフィギュレーション・ファイルなどを理解することができます。だから、非常に速く、このプロジェクトについて。
2.高保守性:良い組織のルールの定義、守備は非常に明確に任意のディレクトリの下に配置する必要があり、新たなどのファイルとコードを知ることができるようになります。利点は、時間の経過とともに、コード/構成サイズが増加すると、プロジェクトの構造はまだ、よく整理することが混同されない、ということです。
第二に、カタログ組織
良いPythonプロジェクトのディレクトリ構造を整理する方法について、既にいくつかのコンセンサスは、ディレクトリ構造があったされています。
あなたのプロジェクトと呼ばれるMY_PROJECTを想定すると、
MY_PROJECT / | - binに/実行ファイルはもちろん、あなたも同様に/スクリプト命名することができますが、ビン/より直感的に、いくつかのアイテムを格納します。分かりやすい | | - __init__ | | - start.py書き込みランチャー | | -コア/ストレージ・プロジェクトのすべてのソースコード(コアコード)。(1)すべてのソースコード・モジュール、パッケージは、このディレクトリに置かれるべきです。最上位のディレクトリを入れないでください。(2)記憶手段そのサブテスト/テストコードは、入口(3)は、好ましくはmain.py.というプログラムであります | | -テスト/ | | | -を__init__.py | | | - test.main.py | | | | -を__init__.py | | - test_main.py |ストレージ・コア・ロジック | | - confに/プロフィール | | -を__init__.py | | - setting.py書き込み設定 | | --- DB /データベースファイル | | --db.json書き込みデータベースファイル | | -ドキュメント/いくつかのドキュメントを格納 | | - libに/ライブラリファイル、カスタムモジュールやパッケージ入れ | | - __init__.py common.pyプット一般的に使用される機能を- | | | | -ログ/ログファイル | | -のaccess.log書き込みログ | | -を__init__.py | - READMEプロジェクトのドキュメント
| - requirements.txt
注:运行程序时,在bin目录下执行start.py代码,不可以直接执行core下的模块。
プロジェクトディレクトリ
- ビン #プログラムエントリファイル
- コア #メインプログラムディレクトリ(コアコード)
- confに #設定ファイル、主に他の人が使用することをしながら、簡単に設定でき、インターフェイスを残します
- DBの #データベース
- LIB #他のクラスと呼ばれるモジュール(相関がない普遍的なモジュール、および現在のプロジェクト(低カップリング)である)を容易にする公共図書館目録
- ログ #ログファイルを
プロジェクトファイル
- requirements.txt: 外部ソフトウェア依存関係の収納袋Pythonのリスト
- README.md: プロジェクトのドキュメント。
READMEの内容について
私は、これは、各プロジェクトがファイルを持っている必要があることだと思います、目的は、読者がすぐにプロジェクトを理解することができ、プロジェクトの説明の簡潔な情報をできるようにすることです。
これは、以下の事項ことに留意すべきです。
- ソフトウェアのローカリゼーション、ソフトウェアの基本的な機能。
- 設置環境、スタートコマンド:コードを実行する方法。
- 使用の簡単な説明。
- コードのディレクトリ構造は、より詳細な説明は、ソフトウェアの基本的な原則を指すことができます。
- よくある質問。