2010-05-16 19 views
24

MVC ve 3 Katmanlı veya N katmanlı mimaride bir web sitesi geliştirme farkı nedir?MVC ve 3 Katmanlı veya N katmanlı mimaride bir web sitesi geliştirme farkı nedir?

Hangisi daha iyi? Artıları ve eksileri nelerdir?

+0

Olası çiftleri: http://stackoverflow.com/questions/899803/have-i-implemented-an-tier-application-with-mvc-correctly?rq=1 http : //stackoverflow.com/questions/1135056/mvc-application-how-does-mult-tier-architecture-fit-in? rq = 1, http://stackoverflow.com/questions/14451444/mvc-multi-tier -mobil-application –

cevap

13

Bunlar hemen hemen aynı, ancak 3 Katmanlı olarak, en üst düzey (sunum) alt katmanla doğrudan iletişim kuramaz (veri kalıcılığı).

Model-denetleyicide, Modelin, Görünümün güncellenebilmesi için değiştirdiği Görünümü 'bildirmesi' gerekiyordu. Ancak, bu çoğu web uygulamalarında genellikle vatansız oldukları için bir sorun değildir. İyi bilinen bir PHP MVC mimarisinin, Modellerle doğrudan iletişim kurabilen Görünümler veya tersi olduğundan emin değilim, ancak eğer yapmazlarsa aslında 3-Katman olduklarını söylemek doğru olur.

Vikipedi diyor ki: İlk bakışta

, üç katlı MVC (Model Görünümü Controller) kavramı benzer görünebilir; Ancak, topolojik olarak farklıdırlar. Üç katmanlı bir mimarisinde bir temel kuralı, hiçbir zaman veri katmanı ile iletişim kurar; Üç katmanlı bir modelde tüm iletişimi ara katman katmanından geçmelidir. Kavramsal olarak üç katmanlı mimari doğrusaldır. Ancak, MVC mimarisi üçgeni: Görünüm Denetleyiciye güncelleştirmeleri gönderir, Denetçi Modeli güncelleştirir ve Görünüm doğrudan Modelden güncelleştirilir .

Kaynak: Wikipedia: Multitier architecture

+0

Çoğu modern MVC çerçevesinde, model hiçbir zaman görüş ile iletişim kuramaz. Her şey kontrolörden geçer. – anemaria20

İlgili konular