The best resources for Windows Phone 7 Development
Here is a collection of great resources to get you started developing for Windows Phone 7, and to continue doing so. I’ll be keeping this post up-to-date over the coming months.
Official documentation
- Windows Phone for Developers – a hub for all info from Microsoft, although it feels somewhat sparse at first glance
- MSDN official documentation for Windows Phone 7 – covers all API’s and classes provided by Windows Phone 7, as well as highlighting differences between platforms
- MSDN Visual C# Developer Center{#ctl00_Masthead_brandlink}
- Windows Team Blog – occasionally updated with the latest release news and tips
Getting started learning Windows Phone 7
Here is a video introduction to the platform, covering a simple hello world app to get you started:
Then check out:
- Start here on the Windows Phone Team blog - this introduces the main training kits and links to downloads of the latest release of developer tools
- Windows Phone 7 with Mike Harsh - A recent discussion on the platform with hints and tips (Aug 2010)
- Building Windows Phone 7 Applications with Silverlight Part One, and Part Two - 2 part presentation from MIX10 introducting the tools and skills needed to get started with Silverlight for Windows Phone 7 (from Spring 2010 so slightly out of date)
Learning C#:
- C# Yellow Book - before learning Windows Phone 7 you need to get to know C-sharp, this free e-book is a great place to start
- C# cheat sheets - once you’ve learnt C-sharp, these handy cheat sheets will serve as a useful reference. My favourites are this in-depth one from corecsharp, a comparison of C-sharp and the same features in other languages and one for the basics with lovely code coloring. The site also covers XAML, LINQ, .NET and Silverlight along with anything else you can think of
Using Visual Studio efficiently:
- How to refactor code using Visual Studio part 1, and part 2 - videos on how to use VS to automatically refactor code
- Application Development in Visual Studio and Visual Studio Walkthroughs - hints and tips on how to get the most out of Visual Studio and save yourself time and effort
Learning Windows Phone 7:
- The free e-book Programming Windows Phone 7 - this appears to be a Microsoft sponsored book which is currently in development. You can download new chapters as they become available (11 are present in the latest release) and the e-book will remain free to download on completion.
- WP7 Training Kit – includes selected videos and hands on tutorials to provide a complete Windows Phone 7 training course
- The aforementioned XAML, LINQ, .NET and Silverlight cheatsheets
- ScottGu’s Twitter Client training excercise
- Windows Phone 7 for iPhone developers - Jesse Liberty has a course of tutorials aimed at iPhone developers over on his blog
- Windows Phone 7 tutorials by Compiled Experience - an on-going series of tutorials focused around a range of sample apps. Topics covered include use of the device API’s, MVVM pattern, best practices, isolated storage and more. Well laid out and easy to follow.
Tips for designers:
- Designing a flexible user interface
- Windows Phone 7 Design resources - UI Guide and design templates
How to figure out what class libraries are available on Windows Phone 7, doing so is sadly nightmarish and highly confusing:
- Look at the full list of Silverlight classes
- Remove those listed as unsupported
- Show your bosses this list, which provides a summary in english of what is/isn’t supported
- Here are some classes which are supported (but not all classes)
- Supported Silverlight features which behave differently in Windows Phone 7
- Windows Phone 7 specific classes
- All Silverlight classes, some of which won’t be available (see above)
Video sessions introducing topics and providing tutorials (in order of release, newest first so most relevant):
- Inside Windows Phone Series - ongoing series of videos on Windows Phone from Channel 9, ‘Watch exclusive interviews with the designers, product managers and developers coding the Windows Phone OS and developer platform’
- Windows Phone 7 Jump Start training videos - 12 hour course in Windows Phone 7 Development
- Windows Phone Design Day recordings - Series of sessions from Microsoft presented in August 2010, focus on designers
- Silverlight Screencasts Windows Phone 7 section which currently has 4 screencasts covering the basics
- Microsoft TechEd Online Windows Phone 7 - all the Windows Phone 7 sessions from the TechEd conference which took place in June 2010
- MIX10, March 2010 - watch all the sessions online from MIX10 in March 2010, with around 10 on Windows Phone 7
- General Videos on Windows Phone 7 - an unorganised but comprehensive collection of training videos
- YouTube videos on Windows Phone 7 and Silverlight
Events
- PDC10, Oct 2010 - Microsoft PDC conference in Redmond, WA. All sessions to be streamed online, promises plenty of Windows Phone 7 sessions in the second track. Also a good opportunity to meet US developers. $1000.
- Windows Phone 7 User Group in London & Silverlight UK User Group - events to be announced on a semi-regular basis
- Windows Phone 7 Developer day, free event in Manchester (UK), 7th Oct 2010
Keep on top of things and find solutions to problems
Use these forums to ask questions and keep an eye on solutions you could use:
Subscribe to these blogs:
- Windows Phone 7 coding - an independent blog collecting lots of tutorials on niche tasks and solutions to tricky problems
- Peter Torr’s Blog - regular posts on WP7 development
- The wp7 daily - twitter newspaper focusing on WP7
Get listening to these podcasts:
- The Silverlight Podcast - the past few weeks (as of August 10th 2010) have seen plenty of episodes focusing on Windows Phone 7 with lots of dev tips, reviews and news
- Yet another Podcast - Jesse Liberty’s new (as of Sept 20th) WP7 focused podcast
Check these twitter accounts for the most up-to-date info, news, latest blog posts, development tips…
- Ckindel (Key player in the future of Windows Phone App development)
- wp7dev (The twitter account of the Windows 7 dev team - not updated as often as individuals accounts, but the key stuff should be on here)
- Odedran (UK head of consumer marketing for Windows Phone)
- keyboardP (enthusiast who often retweets intetesting posts and tutorials)
Code libraries and toolkits
- Enterprise Library 5.0 provides additional classes focused on generic patterns and practises that are good to follow included logging, cryptography, exception handling and validation
- Silverlight for Windows Phone toolkit provides additional controls, components and utilities for reuse and now has a Windows Phone 7 release. Informal documentation can be found here and here, you can also watch Inside Windows Phone Episode 5 - Windows Phone Silverlight Toolkit.
- A collection of Windows Phone 7 controls - a list of links to controls found in a range of locations
- Mobile Advertising SDK for Windows Phone - easily incorporate ads in your apps with this Microsoft plugin (more info here)
- MVVM Light Toolkit provides additional tools to enable you to easily code using the Model-View-ViewModel design pattern which keeps the View and Model separate and allows for more flexible coding, also explained by Jeremy Likness hither and Jason Dolinger thither and in 3 easy steps
- .NET Extension Methods Library is a set of object extensions enhancing objects such as String, Object, DateTime etc. These are all from a print magazine, meaning the code standard should be reasonable.
- A range of Windows Phone 7 sample apps and extensions
- Patterns & Practices - Windows Phone 7 Developer Guide - an early release of a best practice guide for WP7
- Find more extensions at CodePlex, Microsofts Open Source code hosting platform
Posts on general concepts I’ve found useful
- Getting diagnostic output from Windows Phone 7 (console.log doesn’t work on WP7)
- Building a Windows Phone 7 Twitter Client from Microsoft’s dev guru Scott Guthrie
- Cheat Sheet for Unit Testing on Windows Phone 7 and How to build a Windows Phone 7 app using test driven development - introduces concepts of unit testing for Windows Phone 7, contrary to the location given in the tutorial you should locate the unit testing toolkit here, also beware - examples are incomplete.
Achieving specific tasks
- Progress bar optimisations by Jeff Wilcox - part 1 and part 2
- Peter Torr’s Introduction to Places - Advice on application structure and the concept of places, pages and screens
- Saving State execution model best practices - tips on how best to save users state in your apps
- Don’t forget to encrypt your Windows Phone 7 data - a guide to WP7 security
- Working with photos - accessing images on the device from within your apps
- Managing Trial Applications for WP7 - advice on managing trials in your apps (video here)
- Using the accelerometer - different ways of taking advantage of the accelerometer on the device
- Panorama Tricks - 3 posts so far from DevDave on using Panorama in apps, including Using XAML for your background. Get a full introduction to Panorama and Pivot by watching Inside Windows Phone #6 - Panorama and Pivot are in the house
- Tombstoning Simplified, less duplication
- WP7 Gestures cheatsheet
Performance tips
- Creating high performance Windows Phone 7 apps white paper
- WP7 Developer Tips and Tricks - Jeff Wilcox sent out a bunch of tweets on performance optimisations and Tim Heuer captured them, hear Jeff discuss Performance of Windows Phone 7 on the Hanselminutes Podcast
- Watch Inside Windows Phone #3 - Optimizing Windows Phone Silverlight Apps
- Building high-performance Silverlight Apps on Windows Phone 7
- Silverlight Performance tips from MSDN
- Optimising graphics for Windows Phone
- A guide to the frame rate counters on the emulator - what do those numbers mean?
Even more links
Windows Phone 7 resources - Indyfromoz has been even busier than me, there’s a huge number of links on his page and I’ve not had time to go through them all but they look well chosen. This could be the most comprehensive list out there!
comments powered by Disqus