0

Symfony2 フレームワークを使用して初めてア​​プリケーションを構築しようとしています。しかし、学ぶべきことがたくさんあり、私の脳はすべてのビデオ/ブログ投稿/ヒント/ドキュメントで飽和状態になり、これらすべての情報に圧倒されているように感じます. プロジェクトを正しい方法で開始し、アーキテクチャが適切であることを確認したいと考えています。「バンドル」という概念を理解しています。これは、機能に関連するすべての情報を意味します。しかし、私は自問自答します...機能とは何ですか? 機能をどのように定義しますか?

私のプロジェクトから簡単な例を取り上げます。アカウントにサインアップ/ログインできるユーザーがいます。ログインはそれ自体が機能ですか? それとも、管理インターフェース全体が機能ですか?

2番目の例もあります。私のアプリケーションでは、ユーザーがサーバーにファイルをアップロードできます。アップローダはバンドル (ファイルの検証、ファイルのコピー、画像のサイズ変更) に含まれていると思われますか? アップローダが (ロゴや製品の画像などをアップロードするために) 何度も使用されることはわかっていますが、完了したらコードを再利用したいと思っています。

4

1 に答える 1

2

バンドルは、1つのものを実装するクラスのグループです。バンドルは、ライブラリとフレームワークの間の接着剤です。たとえば、ブログを作成する場合、メイン バンドルは BlogBu​​ndle になります。また、なんとコメント システムなので、CommentBundle もあります。メニューには、KnpMenu ライブラリを使用するため、KnpMenuBundle を使用します。ページを動的にするには、SonataBlockBundle と SonataAdminBundle も使用します。

これらはすべて機能です。

あなたのケースに答えるために: すべての管理者は 1 つのバンドルです。ただし、この管理バンドルにはユーザー システムが含まれていません。これは、UserBundle (FosUserBundle など) のタスクです。

2 番目のケース: 特定のファイル (構成で構成) のアップロードを処理する MediaBundle があります。また、ユーザー システム用の UserBundle と、プロジェクトの制御を維持するためのある種の AdminBundle もあります。

于 2013-10-30T18:01:42.627 に答える