MVC1 ile MVC2 arasındaki fark

Anonim

MVC1 vs MVC2

MVC aslında iki model olarak sınıflandırılabilen bir tasarım modelidir: MVC Model 1 ve MVC Modeli 2. Kısaltılmış olarak, bunlar Java tasarım modelleri olan MVC1 ve MVC2'dir.

MVC2, aslında, Sunum Kontrol Mantığı ve Uygulama durumunun ayrılması gerçekleştirilen daha karmaşık bir modeldir. Dolayısıyla, MVC1 mimarisinin aksine, Model 2, sayfa merkezli özelliklere sahip değildir. Model 2 ayrıca gelen tüm isteklerden sorumlu olan bir denetleyiciye, sonra ne olacağını ve hangi görünümü görüntüleyeceğini belirler. MVC2'de, bir sonraki aşamaya veya görünüme yönelik JSP sayfalarının bağlantıları, bir JSP sayfasının bir JSP sayfasına doğrudan yol açtığı MVC1 yerine denetleyiciyi de geçecektir.

Yani temel olarak, MVC1 çoğunlukla JSP kullanan kontrol öğelerinden oluşurken, MVC2 kullanıcı arabirimi sağlanmasında Model 1'den daha iyi olduğuna inanılan bir JSP ve Servlet kullanmaktadır. MVC1 ayrıca veri toplama için Java fasulye kullanır.

İki modelin sistemleri arasındaki fark, sayfaların nasıl işlendiği ve görüntülendiğiyle belirginleşiyor. Daha ayrıntılı açıklama yapmak için, MVC1, bir Bean ile birlikte çalışan bir JSP tarafından istek kabul edilmekte ve iki kombine işlem, sonuçları üretmek için mantığı kullanmaktadır. JSP sadece "Denetleyici" değil, "Görünüm" iken, fasulye modelin rolünü üstlendiği için iş ikiye bölünüyor. "Sayfalar arasında doğrudan erişilen bu tür MVC1 modeli küçük uygulamalar için idealdir.

Öte yandan, MVC2 genellikle "merkezi olma" özelliğinden dolayı daha büyük veya etkileşimli uygulamalar için kullanılmaktadır. MVC1'in aksine, ekrandaki geçerli sayfanın açılması gereken bir sonraki sayfası belirlediği MVC1 mimarisi, denetleyiciyi tarayıcı ile Servlet veya JSP sayfaları arasında kullanır. Bahsettiğim gibi kontrolör, isteklerin bir sonraki görüş için önünü açacak ana "geçit" olarak görev görür. Model 2, temelde bu JSP sayfalarını ve Servlet'leri birbirinden ayırırken, Model 1 boyunca ikisini birbirine bağlar. Dolayısıyla MVC2, birçok kullanıcı için manipüle edilmesi kolaydır ve daha karmaşık bir sistemi destekleyebilir.

Halen MVC1'i mimari tasarımı olarak çok az sayıda uygulama kullanmaktadır. Web'de gezinme talepleri arttıkça, MVC2'yi hangi programda yapacağınızı kullanmak normaldir. Tabii ki, MVC1'in sonsuz derecede basit olması, çalışma amacıyla favori olmaya devam ettiği anlamına geliyor. Bununla birlikte, pratik uygulamalar artık MVC2 kadar sıklıkla uygulanmamaktadır.

Günümüzde yaygın olarak görülen yanlış anlamalardan biri de, MVC1 ve MVC2 kullanımlarını içermektedir.Çoğu kişi, MVC2'nin aslında yeni bir MVC sürümü olduğuna inanıyor; ancak bunun aslında bir alt kategori veya sürece yaklaşmanın başka bir yolu olduğu ve bu nedenle Model 2 olduğu düşünülüyordu. Bu nedenle, MVC1 ifadesi, arasında bir ayrım yaratmak için üretildi. iki model.

İdeal olarak, yazılım mimarisi sahibi olmak isteyenler, yalnızca MVC2 yerine MVC'nin her iki yönünü de incelemeyi tercih etmelidir. Bu, MVC1'in ilk tanıtıldığı düşünülürse, tüm sistemi daha iyi anlamanızı sağlayacaktır.

Özet:

1. MVC2, bir sistem denetleyicisi kullanırken MVC1 kullanmaz.

2. MVC1 işlemi bir JSP sayfasından diğerine geçerken, MVC2 başka bir sayfaya yönelmeden önce ortak bir panele yönlendiriyor.

3. MVC1 bugün nadiren kullanılmaktadır ve basit, bağımsız programlar için çoğunlukla iyidir.

4. MVC2, bugün kullanılan en yaygın mimari modeldir ve daha karmaşık sistemler için en iyisidir.