Telerik has published a ToDoLists reference application on their site to demonstrate how to use their Windows Phone Rad controls as well as to walk developers through their process for designing a WP7 application. Telerik asked me to write a few words about it.
If you have already been through Microsoft’s default templates, this reference app is a good next stop. You can read about it and download the sample code here: http://www.telerik.com/products/windows-phone/getting-started/todolists.aspx
For all we learn from blog posts and books, there’s nothing quite like walking through a sample app to learn how to do something. There are several non-standard but – I think – extremely interesting things about this app that developers will find useful.
1. Telerik discusses their design process and includes a wireframe document for download. Many of us have no idea about how to go about designing a Windows Phone application. This little bit of guidance on the design process (definitely UI design first) is probably one of the most valuable things available to WP7 developers currently on the internet.
2. The ToDoLists app does not try to inherit the user defined accent colors or background theme. There is one look and it is the one the designer came up with. This may seem unorthodox at best and heretical at worst. To me, however, it seems like a brilliant move. The whole point of the limited customization of themes is to give the end-user a sense of control and personal connection with their apps. The cost of trying to incorporate the user selected theme, however, is a compromise of the design vision. If the design is good, I think it is worthwhile to simply ignore the user theme and maintain the integrity of the design as is done in this reference app.
3. The ToDoLists app also demonstrates how to organize the design vision in code and how to organize resources. This is a topic that usually gets short-shrift.
4. The ToDoLists app uses my friend Jeremy Likness’s Sterling NoSql database. This is extremely handy code to be able to walk through. The app even provides an example of generating initial data for Sterling.
5. It doesn’t use any of the standard MVVM frameworks. Instead, it’s a roll-your-own implementation of MVVM. This is a nice reminder that MVVM doesn’t have to be complex. We’ve almost reached the point when we no longer have to explain why MVVM should be used in XAML-based applications. It’s simply what we do, right?
6. This is an attractive design. It is recognizably Metro without slavishly following what most developers interpret as the Metro guidelines – that is, black, white and blocky.
So is this a paid ad for Telerik? Sort of – except to turn things on their heads, you get paid instead of me. If you are one of the first ten commenters on this post, and include a valid email, and are not a bot (so many conditions), Telerik will send you a free license to their RadControls for Windows Phone.
Just be one of the first ten commenters to say something like “I’d like a free license” in the comments by EOD next Monday (the 16th) and Telerik will hook you up.