Sunday, 26 March 2017

MVC - Architecture : Concept


What is the acronym of MVC?
The acronym of MVC is M-Model  V- View C-Controller

What is the definition of MVC?
MVC is a software architectural pattern designed and developed for implementing user interfaces on a computer. MVC divides the given application into three major interconnected segments that is model view and controller in order to separate internal representation of the information from the way information is presented to and accepted from the user allowing parallel development and code re-use ability.

What are the features of MVC ?
The features of MVC are as follows:
  • ·         It is a software architectural pattern
  • ·         It divides application into 3 interconnected segments i.e model view and controller
  • ·         It allows parallel development and code re-use ability
  • ·         It is a popular pattern for designing web applications, mobile and other clients.

 What was MVC originally used for ?
MVC was originally designed and developed for Graphical User Interface(GUI) applications

Which languages are using MVC ?
Popular programming languages such as Java, Python, C#, ASP.net are using MVC for developing applications.

Draw the diagrammatic representation of MVC architecture?

High -level diagram


Basic Diagram

 Draw the Use-Case diagram of the MVC-architecture ?


 
 Explain the components of MVC- architecture ?
The components of MVC architecture are as follows:

Model : Model is the core and central component of the MVC architecture. It manages the data, logic and rules of the application It indirectly interacts with the View segment with the help of Controller but interacts directly with the Controller component.
                            Model expresses the application behavior in terms of problem domain independent of the user interface. It stores the data that is retrieved according to commands from the controller and displayed in the view.  In short, model acts as connecting medium for the  database of the application.

View: View component of the MVC- architecture acts as interface which the user sees and manipulates the displayed information. It generates output to the user based on the changes in the model. Multiple views of the same information are possible.
                    For example, a bar chart for management and a tabular view for the accountants.

Controller: Controller component of the MVC architecture acts as commander where the logic of the application is written. It sends commands to the Model to update the model's state. It can also send command to View to change the View's presentation of model.

What are the advantages of MVC ?
The advantages of MVC -Architecture are as follows:
·        
  • Parallel Development: MVC architecture decouples the application into different components by which developers are able to work in parallel on different components without impacting and/or blocking one another.
  • High Cohesion: MVC enables logical grouping of related actions on a controller together. It also combines specific model for views together
  •  Low Coupling : MVC architecture decouples the application into three segments which are independent and distributed and hence low coupling.
  • Code Resuse: MVC architecture divides the application into seperate components . So developers are able to reuse the components quickly and easily in other applications. The same view can be re-factored for another application with different data  because the view is simply handling the way data is displayed to the user.
  •  Multiple Views for a Model : MVC allows multiple views of a model to be developed

What are the disadvantages of MVC architecture ?
The disadvantages of MVC architecture are as follows:
  • Code Navigability: Framework navigation can be complex because it introduces new layers of abstraction and requires users to adapt to its criteria
  •  Pronounced learning curve: Applications adapting to  MVC architecture allows developers to be skilled in multiple technologies which becomes the norm

MVC - Architecture : Concept What is the acronym of MVC? The acronym of MVC is M- Model  V- View C- Controller What is the def...