-2

アクティブレコードパターンは、データベース内のデータにアクセスする方法です。データベーステーブルまたはビューは、クラスにラップされます。したがって、オブジェクト・インスタンスは表内の単一の行に結び付けられます。オブジェクトの作成後、保存時に新しい行がテーブルに追加されます。MVCとアクティブレコード対ファクトリ

MVCは、MVC(Model View Controller)デザインを使用してWebアプリケーションを構築するためのフレームワークです。モデルは、アプリケーションコア(データベースレコードのリストなど)を表します。ビューにデータ(データベースレコード)が表示されます。

ファクトリパターンでは、作成ロジックをクライアントに公開することなくオブジェクトを作成し、共通インターフェイスを使用して新しく作成されたオブジェクトを参照します。

アクティブレコードと比較してMVCを使用するメリットは何ですか?

私のウェブサイトでは、アクティブレコード&の組み合わせを使用しています。私にとっては、いくつかの関数を書くだけでよいので、これらの関数を使う方が簡単で高速です。また、私はビュー、モデル、または他の何かを必要としません。私の意見では、規則に縛られるほど、設計が複雑になるということです。

しかし、私が言うことが正しい場合、MVCを使用するフレームワークが多すぎるのはなぜですか?

答えて

3

3は完全に無関係です。

MVCは、あらゆる種類のUIに使用できるソフトウェアアーキテクチャパターンです。このパターンは、アプリケーションの内部アーキテクチャを定義するために使用されます。モデルはデータベースにマッピングされるオブジェクトではなく、ドメインモデルです。

アクティブレコードは、統合パターンです。特に、永続性パターンは、オブジェクトをデータベースにマップする方法の問題を解決します。

ファクトリは、特定のオブジェクトを構築する複雑さを抽象化するデザインパターン、特にオブジェクト作成パターンです。

どのように動作するのかを説明する3つのパターンすべてについて、ウィキペディアのページがあります。そして

    • あなたは(各書籍は、パターンのそれぞれを説明し、順番に)読むことができるより多くの情報が必要な場合は、パターン指向ソフトウェアアーキテクチャ、パターンのシステム:第1巻
    • エンタープライズ統合パターン
    • デザインパターン:再利用可能なオブジェクト指向ソフトウェアの要素

    あなたの最後の質問について:なぜそんなに多くのMVCフレームワークですか?すべてに痛みの点があり、痛みのないMVCフレームワークを作ることができると思う人もいます(ユニコーンを探すようなものです)

  • 関連する問題