これは、この質問によく似ています。
Martin Fowler 著の Patterns of Enterprise Application Architecture をご覧になることを強くお勧めします。
モデルやドメイン、オブジェクト リレーショナル マッピングやデータベース抽象化に関連する質問をこのサイトで検索することもお勧めします。特に PHP に関しては、すばらしいコンテンツがたくさんあることを知りました。
あなたが投稿したこの質問には、2 つの質問があります。まず、サイトの一般的なアーキテクチャ コンポーネントは何ですか。一般的に、これらの 3 つはなんらかの形で現れます。
- データベースとデータベース相互作用レイヤー
- コントローラ - $_GET および $_POST (リクエスト) を処理し、コンテンツをビューに割り当て、最終的にレンダリングします。
- ビュー - HTML と、コレクションや変数出力を反復処理するためのループなどの非常に基本的なコードのみを含める必要があります。
2 番目の質問は、特定のビジネス オブジェクトの処理をアプリケーション内のどこに配置するかということです。ビジネス オブジェクト (ドメイン内) とデータベース テーブル内の行の両方として Post を操作する必要があると想定しているため、ここで議論が少し複雑になります。これらの問題は両方とも、Ruby on Rails で普及した Active Record と呼ばれるパターンを利用して、同じクラス内にラップできます。ただし、関連するアプリケーションとデータベースの複雑さによっては、データベース インタラクション レイヤーとして機能する 1 つの Post クラスと、すべてのビジネス ロジックを含む別の Post クラスを作成することによって、ビジネス ロジックをデータベース インタラクションから分離することを検討する必要がある場合があります。