Presentation-abstraction-control(PAC)は、物事のDrupals一般的なアプローチを記述するパターンの最も近い一致のようですが、私は、これは、多かれ少なかれ、偶発的であると思います;)
の階層的な組織(多かれ少なかれ)独立したPACトリプレットは、一般的な屋根の下で多かれ少なかれ独立したエージェントであるDrupalモジュールに大まかにマッピングされ、3つの領域(View、Controller、Model/Abstraction)のすべてでその役割を果たします。情報の流れは、厳密にView<>Controller/Presenter<>Model
なるよう
Model-view-presenter
も、Drupalの中に見つけることができるいくつかの側面、特にビューはモデルから直接その内容を取らないことでMVCからの逸脱が、コントローラからを定義します。
しかし、Drupalでの懸念の分離は(まだ)非常に非公式であり、開発者のコーディング規律に大きく依存するため、常に完全に分解することの限界にありますテーマレイヤーへ、多かれ少なかれビューに)。
Drupalの成功の理由の1つとして、厳密に分離を強制するのではなく、非常に異なる背景を持つ幅広い人々が訓練を受けた開発者でなくても貢献できるということです。たとえば、PHPを少し知っているHTML/CSS Guyは、本格的なモジュールを実装することなく、テンプレート内から非常に多くの調整や機能を追加することができます。彼がしたことが一般的な関心事であれば、それは遅かれ早かれを進化させて、他の人がそれを拾うより公式の構造/モジュールに進化させます。欲求不満、趣味、初心者の開発者にとっても同じことです。何が起こっているのかを実際に理解することなく目標を達成することができるため、機能に対するアイデアは一般的な関心事を満たしていれば貢献に加わり、洗練されます。
これまでのところ、これは非常にうまく働いている - のDrupalのコアは、より正式ました(scriptish以下;)すべてのメジャーリリースではまだアドオンの追加のための柔軟性を維持しながら - これは、将来的にホールドアップするかどうかを見てみましょう...
次に、Drupalアプリは一般的なカテゴリとして、イベントベースのアプリケーションに似ています。 – AlexA