What is MVC?
The Model View Controller is an architechtural pattern developed by Microsoft as an alternative to ASP. Net Platform. The MVC model nowadays is used to develop modern interfaces. It works smoothly with object-oriented programming because different components of MVC can be reused within a program.
Versions of MVC
MVC 1.0
Release Date - 13th March 2009
Visual Studio - VS 2008
.NET Version - .NET 3.5
Features - MVC Architecture incorporating webform engine, Routing, HTML and Ajax helpers, etc.
MVC 2.0
Release Date - 10th March 2010
Visual Studio - VS 2008
.NET Version - .NET 3.5/4.0
Features - Data Annotations Attributes, new HTML helpers methods, customizable templates, scaffolding, etc.
MVC 3.0
Release Date - 13th January 2011
Visual Studio - VS 2010
.NET Version - .NET 4.0
Features - JavaScript validation, Razor view engine, remote validation, enhanced data annotations attributes, etc.
MVC 4.0
Release Date - 15th August 2012
Visual Studio - VS 2010, VS 2012
.NET Version - .NET 4.0/4.5
Features - New Mobile Project Template, Windows Azure SDK support, minifcation, bundling etc.
MVC 5.0
Release Date - 17th October 2013
Visual Studio - VS 2013
.NET Version - .NET 4.5
Features - Bootstrap support, New scaffolding items, ASP.NET Identity etc.
MVC 5.2
Release Date - 28th August 2014
Visual Studio - VS 2013
.NET Version - .NET 4.5
Features - Attribute based routing and minor updates
MVC 5.2.3
Release Date - 8th February 2015
Visual Studio - VS 2015
.NET Version - .NET 4.5
Features - Bug Fixing and minor updates
MVC 5.2.7
Release Date - 29th November 2018
Visual Studio - VS 2017
.NET Version - .NET 4.5
Features - Bug Fixing and minor updates
Kentico and MVC
For the past few years, Kentico is focusing on MVC and want to make the full transition from web forms to MVC. Microsoft has also ended support to old webforms thus making way for new models like MVC. MVC has various advantages over web forms like it gives full control over HTML, clear separation between model, view and controller, etc.
MVC was first introduced in the Kentico CMS 9 version to reduce the problems created by web forms. Kentico thinks MVC is the future and time has come to stop using web forms. The major concern was how developers around the world would transition from Portal Engines to MVC since it is based on an entirely different model.
Before the end of 2020, Portal Engine web development will be stopped and support for portal engines will end by 2022.
You May Also Read: Everything you need to know about ASP.NET MVC framework
Kentico CMS Evolution
ASPX
In 1996 Microsoft launched one the oldest server-side script engine – ASPX (Active server pages). Kentico used it as the building block to develop custom web applications.
PORTAL PAGES
Kentico Version –2 incorporated the Portal pages model and revolutionized the CMS. With Portal pages, unique and complex web applications can be developed. From Kentico 2 to Kentico 9 the portal pages were effectively used by Kentico to develop the CMS.
MVC
Since 2010 Microsoft has given MVC more emphasis over Web forms and in a similar way Kentico adopted the change. In the last 9 years, Kentico CMS has focused on the MVC model and ensured a smooth transition is done. Robust and SEO friendly websites are now being developed on Kentico MVC.
MVC ARCHITECTURE
MVC pattern mainly consists of three groups Models, View and Controller. This model is designed in such a way that user requests are directed towards the controller which works with the model produces the result and finally, the controller chooses a view to display the result.
MODEL
The Model is the backbone of the MVC architecture and represents the operation performed by it. The data is stored in the model and retrieved according to the input. For example, customer object will retrieve customer information then manipulate it and updated data is sent back to the database.
VIEW
Views are used to display the output to the user through an interface. The .NET MVC applications are displayed which is produced from model data.
CONTROLLER
It acts as an interface between model and view, first controllers handle user in traction then work with model and finally select a view to render. The starting point is a controller and it selects the model type and views to render.
Web Forms Vs MVC
Why Kentico is Betting on MVC
Below are the few reasons Kentico is focusing on MVC
1. EFFECTIVE USE OF RESOURCES
As the components in the MVC are separated it allows the reuse of different business logics and thus developers can save time and resources.
2. SMOOTH INTEGRATION
With MVC you can integrate various applications like jQuery, JSON, AngularJS, etc. with greater ease and flexibility.
3. SEO FRIENDLY
You want your website to rank higher than your competitors? Then you need to switch to MVC. MVC supports the development of SEO friendly programs and gives options to generate URLs which will generate more traffic.
4. DEVELOPERS LOVE IT
Developers and web designers are the builders of applications and MVC gives more flexibility to develop programs. Thus, developers can easily control, modify and edit applications based on MVC.
5. MODIFICATIONS CAN BE DONE EASILY
The developers can edit one part of the application without changing the whole architecture. So, development and modification can go hand in hand with MVC.
6. RESUABILITY
This is one of the best advantages of MVC as the same module can be used again and again, so no need to create a module from scratch. Similar applications can be developed without compromising quality.
7. MULTIPLE VIEWS
In MVC the result can be displayed in various ways thus allowing developers to work with separate data and business logic. Thus, multiple views can be generated for the same data.
8. TEST DRIVEN DEVELOPMENT (TDD)
Testing is one of the most important phases in software development and MVC puts major emphasis on it. It allows testing of individual components simultaneously with development thus ensures the project quality is maintained.