So I am “resting” again between contracts and have been getting stuck in to re-writing my Virtual Cycling community site www.vrcyclist.com with ASP.NET MVC4. Apart from the obvious vrcyclist.com exists so that I have a public place to practice and show off my ASP.NET and web development skills. It started out as a standard WebForms 1.0 site then progressed to ASP.NET Ajax and I even added a few new features using Silverlight. Now with HTML5 becoming ever more prominent (even though it still isn’t a finished standard) I think it is time for a complete re-write, which provides me with an opportunity to morph it into a more general site for active people while retaining the existing functionality.
I’ve been learning MVC4 for a year or so now (I think I mentioned before when MVC and Silverlight were released around the same time I opted for throwing myself into Silverlight), which has made for a nice distraction from doing primarily Silverlight or WPF work for the last few years.
Kindle on my iPad is packed with books on ASP.NET MVC, HTML5, CSS3 and JavaScript that I have been using to bone up on relevant subjects and Progressive Enhancement struck me as pretty crucial for a modern web site/application. I also noted the rise of KnockoutJS and the use of the MVVM pattern, which I like the idea of (being very familiar with it in my Silverlight and WPF work). I’ve tinkered with several architectures/models/patterns for the new site and have settled on a pretty stable set work for me. I’ve changed direction a few times and learned a lot of lessons in the process. So I thought others might benefit from seeing what I have settled on and decided to write a series of blog posts to document it. If nothing else I will have documented it for myself and demonstrated a grasp of MVC4 and other technologies to potential employers.
So to start I am just going to list the patterns and technologies I have settled on, which will at least provide a taster for what is to come and maybe tempt you back to read the follow up articles.
Back End/Middle Tier
- ASP.NET MVC 4
- AutoFac 3 (IoC container)
- Entity Framework 5.0 (Code First and Migrations)
- SQL Server 12
- NLog
-
JavaScript Libraries
- jQuery
- jQuery UI
- KnockouJS
- log4javascript
- HistoryJS
- js-signals
-
Testing
- NUnit – TDD Unit Tests
- SpecFlow – BDD Acceptance Tests
- SpecSalad
- Telerik Testing Framework (Free) – UI Automation
Tools
Visual Studio 2012
ReSharper 7
NCrunch – Continuous Test
.NET Demon – Continuous Build
BitBucket – Source control repository
TortoiseHG – Source control client
VisualHG – IDE source control
NuGet – Package management
I won’t necessarily be covering usage of all the tools, but happy to answer any questions regarding usage or choices.
43eaa404-0bb6-41b3-9027-624a0afb9c4c|0|.0|96d5b379-7e1d-4dac-a6ba-1e50db561b04