MVC & MVVC


What is MVC?


MVC is software architecture design pattern. MVC stands for Model , View and Controller , it is a server side design pattern . MVC pattern is used by well-known frameworks such as Ruby on Rails, Apple ios Development, ASP.NET MVC, etc .  It has 3 main component.
  • Model.
  • Controller
  • Views 
         

It like as a triangle where all part can communicate with each other.

 Model

Model represent the shape of the data and business logic and also it defines the business rules for data. It contain the pure application data. In J2EE javabean provide Model.  

View

View display data using model to the user. It knows how to access the model’s data but it does not know what this data means. It is script-based templating systems like JSP, ASP, PHP and very easy to integrate with AJAX technology. In J2EE JSP5 provide view.

Controller

 Controllers are responsible for controlling the flow of the application execution. When you make a request to MVC application, a controller is responsible for returning the response to that request. In J2EE controller servlet provide controller.


What are the advantage of MVC model??

  • Support for asynchronous request.
  • Modification does not affect the entire model.

What are the disadvantage of MVC model??

  • Increased complexity.

What is MVVC ??

MVVM is software architecture design pattern. MVVM stands for Model View- ViewModel. It is used  on all XAML plat There are three core components in this pattern, they are  model, view, and view model. Each component have separate role and decoupled from each other.

                   
These components work on independently. View know about view-model and view-model know about model but model unaware of view-model and view-model unaware of view. This  allow, developer-designer workflow. When the UI XAML is not tightly coupled to the code-behind and
It increases application testability. MVVM is used by WPF, Caliburn, Silverlight, nRoute, and more.

Model

Implementation of the application’s domain. It include data model along with business and validation logic.

View

View represents the user interface components such as CSS, jQuery, HTML, etc.  View binds to observable variables and actions exposed by the View-Model in a flexible way.

View-Model


It is responsible for preparing the data for the UI/View and  wrapping the model and preparing observable data needed by the view Act as intermediary between model and view.

What are the advantage of MVVM model??

  • Components to be swapped.
  • Internal implementation to be changed without affecting the others.
  • Components to be worked on independently.
  • Isolated unit testing.

Comments

Popular posts from this blog

Using OAuth 2.0 Authorization framework