私のペットプロジェクトには、アセットローダーと描画タスクという2つの抽象概念があるようです。抽象化ごとに、それらを表すいくつかのクラス(現在は、タスクの抽象化とアセットローダーの新しいクラスを返すファクトリを描画するための単一のクラス)、ストア(以前はマネージャー)がありますが、 "Manager "ネーミングの単語)と他のいくつかのヘルパー(デコレータなど)。これらすべてをプロジェクト構造に組み込む方法を考えています。私がプロジェクトを始めたとき、抽象化自体のためのフォルダー、店舗のための別のフォルダー、そしてヘルパーのための別のフォルダーがありました。現在、私は、この2つのシステムは実際には並列であるため、個別に開発する必要があることに気付きました。そこで、それぞれにフォルダーを作成することにしました。
だから私が興味深いのは:
読めるところはありますか?変数の命名に関するヒントについては、「クリーンコード」と「コード完了」に興味深い章がいくつかありました。私の問題にはそのようなものはありますか?
最初は複雑なディレクトリ構造を避けようとしています。特定の理由なしにディレクトリ間でファイルを配布することには、特別な利点はありませんが、いくつかの欠点があります。すべてのファイルが同じモジュールに属している場合は、同じディレクトリに保存します。これが非常に多くのファイルを含むディレクトリにつながる場合、その一般的なファイルシステムに問題(たとえば、パフォーマンスの問題)が発生する可能性があります。その場合、モジュールは明らかに大きすぎ、これを最初に修正する必要があります。
ただし、大きくて複雑なモジュールを複数のサブモジュールに分割することが理にかなっている場合もあります。これらが公開されていない場合でも(すべてが単一のモジュールとして配布される可能性があります)、各サブモジュールは独自のディレクトリを取得するため、いつの日か別のモジュールを簡単に作成できます。これにより、質問が「ファイルをディレクトリに分割する方法」から「モジュールをサブモジュールに分割する方法」に変わります。後でその質問に対する答えをすでに見つけました。個人的には、機能ごとにモジュールを分割することを好みます。
命名については、ディレクトリがモジュールまたはサブモジュールのファイルをグループ化する場合、モジュールまたはサブモジュールと同じ名前を付ける必要があります。