Windows Phone 7, MVVM and TDD (Part 1 - Introduction)
by Peter Daukintis
Before jumping into Windows Phone 7 development I need to define some ideas about a baseline architecture so I have a clear development direction to move in. This series of posts will document my thinking in this area. This is not an introductory post on any of the individual technologies and I will assume the reader has some knowledge of the basics. Here’s a list of pre-requisites:
- Windows Phone developer tools CTP – April Refresh http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=cabcd5ed-7dfc-4731-9d7e-3220603cad14 (I am using VS2010 Ultimate with the SDK + Tools)
- MVVM Light Toolkit http://blog.galasoft.ch/archive/2010/04/03/mvvm-light-toolkit-v3-sp1-for-windows-phone-7.aspx
- Silverlight Unit Testing Framework - http://code.msdn.microsoft.com/silverlightut </ul>
I intend to develop a very simple phone application using Silverlight to demonstrate and explore the architecture. The application will present a login screen and allow a user to log in. It will present some kind of busy indicator and when logged in will navigate to another screen (well, I said it would be simple :-)).
I will develop in a test-driven manner using a model-view-viewmodel architecture to support this. I will try to document where I have made choices along the way since I expect there will be many alternative solutions.
Just so we’re all on the same page here’s a sneak preview of the end result.
Here’s a screen grab of the WP7 emulator showing the WP7Login Application and also WP7Login.Tests application. For further information about the tools and the phone emulator see http://developer.windowsphone.com/windows-phone-7-series/
Here’s the application login screen.
While it’s loading…
…and finally transitioning into the welcome screen.
The unit tests will run on the phone emulator and will look like this…
That wraps the introduction.
Technorati Tags: MVVM,Part,Introduction,development,ideas,architecture,direction,series,area,reader,knowledge,basics,Here,requisites,tools,April,Refresh,FamilyID,Ultimate,Toolkit,archive,Unit,Framework,code,user,indicator,manner,Just,preview,result,Application,wraps,technologies,solutions,developer,microsoft,aspx,login,emulatorWindows Live Tags: MVVM,Part,Introduction,development,ideas,architecture,direction,series,area,reader,knowledge,basics,Here,requisites,tools,April,Refresh,FamilyID,Ultimate,Toolkit,archive,Unit,Framework,code,user,indicator,manner,Just,preview,result,Application,wraps,technologies,solutions,developer,microsoft,aspx,login,emulator </div>
Comments