Programming ASP.net MVC4 by J. Chadwick, T. Snyder and H. Panda
4 min read
4 min read
This is one of the recent books I got from O’Reilly. It is probably the most comprehensive and detailed one I’ve encountered so far regarding ASP.net MVC development. More than 400 pages, from the very basics of the MVC pattern, client-side JavaScript and Mobile web development, application architecture to successfully deploying an ASP.net MVC application in production.
First of all, the book is very nicely structured and can be suggested to both, total ASP.net MVC beginners as well as to ASP.net MVC experts. Obviously, the latter will skip the initial chapters. Those mainly deal with the very fundamentals like
Also the chapter “ASP.net MVC for Web Forms Developers” aims at providing an upgrade-path for Web Forms developers by explaining the differences, advantages and disadvantages.
[…] for all of their commonality and similarities, the architecture and goals that drive the ASP.NET MVC and Web Forms Frameworks are fundamentally very different.
For the experts, on the other side, there are topics about
Here a little insight in some of the topics mentioned in the book.
The book also dedicates an entire chapter to “web application architecture” treating topics and suggesting best practices related to the logical and physical design of the application.
The chapter also mentions more commonly known best practices like
![]() |
![]() |
![]() |
All of the concepts are nicely underlined with proper examples.
For the sake of completeness, the book also enters into the (now more and more popular) client-side JavaScript development techniques. As such it treats topics like
It also mentions a lessons learned which I experienced by myself:
The other major drawback to working with complex objects is that they may be heavy or challenging to work with via JavaScript. A good practice to help avoid these challenges is to create a special, lightweight version of the entity called a data transfer object (DTO) that is more easily converted into JSON.
The quality control part goes into the details for constructing a proper logging system by describing on how to catch exceptions in an MVC environment, how to signal the user what happened up to building up a health monitoring system. It then enters into the topic of automated testing, mentioning the kind of automated tests (Unit, Integration, Acceptance Tests), and their corresponding characteristics. Nice examples are also provided on how to test an ASP.net MVC model/controller and how you can keep your tests clean by factoring out duplicated code. The chapter concludes by describing on how to setup a fully functional automated build environment with TFS.
There’s a lot more in the book than I could write here. It also talks about the new Web Api, about security topics, caching as well as advanced data access patterns. I really couldn’t imagine anything that has been left out right now.
That said, I guess by reading this post you should now have quite a good knowledge about whether this book is for you as well as how deep your knowledge is by reading through some of the buzz-words I mentioned. Personally I can really just suggest it to every .Net web developer as it treats all of the currently actual topics in a very detailed, clear and understandable manner.
(Also do not miss the appendix on “Best Practices”!)