Simplified Web Development Experience
Microsoft have made it much simpler to produce HTML pages which are compiled from application code via the ‘Razor’ Syntax. This has opened up additional opportunities for Web Designers thanks to its more simplistic approach.
Testing is also important on the Microsoft stack. The ‘holy grail’ of testing is a fully automated testing environment, that is able to check for issues quicker than any human, and even quicker than the web browser is able to view the web page. In the development world we call this Unit Testing. The development environment utilising allows for the set up Tests which ensures:
- many bugs are found at build time, making for a more stable release
- the team can develop fast whilst checking for many different issues knowing almost instantly that nothing has been broken
- that the solution works correctly
There are often times where we need to test the web pages that are being displayed to end user. Microsoft have a solution for this called Coded UI which allow us to simulate thousands of requests from different accounts and all over the world. It also includes ‘macro’ like functionality allowing us to record certain tasks and test for them multiple times or in the future on a newer release.
Extensibility + Reusability
ASP.NET MVC is highly extensible. If you were using some older technologies, if something didn’t work as you wanted it t, a developer would have to produce a ‘work around’ which often do not result in the most elegant of code and efficiencies.
In ASP.NET MVC, if something doesn’t work the way we would like it to then we can ‘extend’ the core solution and make it work to our requirements. Don’t like the limited scope of Windows Authentication? Prefer to change how and where it stores User Accounts? Want Row Level permissions (something only the very latest SQL Server 2016 supports)? Extending our application on top of ASP.NET MVC allows us to achieve all this.
Nobody wants to reinvent the wheel. Code can live in Libraries which allow us to re-use heavily developed and maintained snippets in future applications, allowing us to focus on your business problem. On top of this, there is a vast .net community which publish code for reuse purposes. These developers often are considered experts in their areas, sharing their code with others to make development better.