編集:アプリ固有のコードにバンドルを使用しなくなりました。
個人的には、アプリケーションのセクションごとにバンドルを作成することを好みます。例えば:
- ユーザーバンドル
- ブログバンドル
- フォーラムバンドル
- ジョブバンドル
- StoreBundle
- 等
アプリがいくつかの機能の寄せ集めで、どれも個別のアプリケーションやサブドメインを必要とするほど大きくない場合、これは問題ありません。しかし、大規模な Web ストア アプリケーションを開発している場合、バンドルはより具体的になります。
- ユーザーバンドル
- 製品バンドル
- カートバンドル
- 検索バンドル
- ウィッシュリストバンドル
- 等
つまり、それはプロジェクトの焦点によって異なります。あるプロジェクトの単なるセクションが、別のプロジェクトのコア機能になる可能性があります。
そして、私は通常CommonBundleを持っています。ここには、グローバル CSS、画像、レイアウトなど、すべての共通のものがあります。
また、バックエンド組織には少なくとも 2 つのオプションがあります。
- 各バンドルに独自のバックエンド セクションがある、または
- 1 つの大きなバックエンド バンドルがあります。
個人的には最初のオプションに傾倒しており、以前の回答でそれについて読むことができますが、バックエンド全体に個別のバンドルを使用することを好む人がいます。おそらく管理バンドルの 1 つを使用します。
ところで、バンドルが相互接続されていてもまったく問題ありません。すべてを互いに独立させる必要はありません。たとえば、JMSDiExtraBundleはメタデータライブラリとJMSAopBundleに依存し、さらに JMSAopBundle はcg-libraryに依存します。バンドルを完全に独立させようとすると、巨大なモノリシックな 1 バンドルのコードの塊になってしまいます。