Model-View-View-Model

Model-View-View-Model

Model-View-ViewModel (MVVM) is a software?design pattern?that is structured to separate program logic and user interface controls. MVVM is also known as model-view-binder and was created by?Microsoft?architects Ken Cooper and John Gossman.

Like many other design patterns, MVVM helps organize code and break programs into modules to make development, updating and reuse of code simpler and faster. The pattern is often used in Windows and web graphics presentation software.

The MVVM pattern is used in Windows Presentation Foundation (WPF), which runs on Microsoft’s?.NET.?Silverlight, a Microsoft WPF internet equivalent multimedia?plug-in, also uses MVVM.

The separation of the code in MVVM is divided into View, ViewModel and Model:

  • View is the collection of visible elements, which also receives user input. This includes user interfaces (UI), animations and text. The content of View is not interacted with directly to change what is presented.
  • ViewModel is located between the View and Model layers. This is where the controls for interacting with View are housed, while binding is used to connect the UI elements in View to the controls in ViewModel.
  • Model houses the logic for the program, which is retrieved by the ViewModel upon its own receipt of input from the user through View.

FEATURES:??

  • Life Cycle state of Application will be maintained.
  • The application will be in the same position as where the user left it.
  • UI Components are kept away from Business Logic.
  • Business Logic is kept away from Database operations.
  • Easy to understand and read.

要查看或添加评论,请登录

Anu Priya的更多文章

  • Predictive Analytics

    Predictive Analytics

    What is predictive analytics? Predictive analytics is a branch of advanced analytics that makes predictions about…

  • Springboot

    Springboot

    Spring Boot is an open source Java-based framework used to create a micro Service. It is developed by Pivotal Team and…

  • Business Intelligence

    Business Intelligence

    What Is Business Intelligence (BI)? Business intelligence (BI) refers to the procedural and technical infrastructure…

  • SharePoint

    SharePoint

    What is Microsoft SharePoint and what is it used for? Microsoft SharePoint is a document management and collaboration…

  • Snowflake

    Snowflake

    What is a Snowflake data warehouse? Snowflake is the first analytics database built with the cloud and delivered as a…

  • Automation Testing.

    Automation Testing.

    What is Automation Testing? Automation Testing is a software testing technique that performs using special automated…

  • DevOps

    DevOps

    DevOps is a set of practices, tools, and a cultural philosophy that automate and integrate the processes between…

  • Cloud Ops

    Cloud Ops

    What is Cloud Operations (CloudOps)? Cloud Operations (CloudOps) is the practice of managing delivery, tuning…

  • Collibra

    Collibra

    What is Collibra? Collibra is a data catalog platform and tool that helps organizations better understand and manage…

  • Map Reduce

    Map Reduce

    What is MapReduce? MapReduce is a processing technique and a program model for distributed computing based on java. The…

社区洞察

其他会员也浏览了