Bring Your iPhone Apps and Skills to Windows Phone 7—or Build Apps for Both Mobile Platforms at Once
If you’ve been developing for the crowded iPhone marketplace, this book will help you leverage your iOS skills on a fast-growing new platform: Windows Phone 7 (WP7). If you’re a .NET programmer, it will help you build advanced WP7 mobile solutions that reflect valuable lessons learned by iPhone developers. If you’re a mobile development manager, it offers indispensable insights for planning cross-platform projects.
Kevin Hoffman guides you through the entire WP7 SDK, showing how it resembles Apple’s iOS SDK, where it differs, and how to build production-quality WP7 apps that sell. Step by step, you’ll master each technology you’ll need, including C#, Silverlight and XAML. Every new concept is introduced along with all the tools and background needed to apply it.
Hoffman’s practical insights extend into every facet of WP7 development: building user interfaces; hardware and device services; WP7’s unique Application Tiles; Push Notifications; the Phone Execution Model, local storage, smart clients, MVVM design, security, social gaming, testing, debugging, deployment, and more. A pleasure to read and packed with realistic examples, this is the most useful Windows Phone 7 development book you can find.
· Compare Apple’s Objective-C and Microsoft’s C#: “second cousins twice removed”
· Apply C# object techniques—including encapsulation, inheritance, contracts, and interfaces
· Build rich, compelling user interfaces based on Silverlight, XAML, and events
· Move from Apple’s Xcode to Visual Studio 2010 and from Interface Builder to Expression Blend
· Leverage hardware and device services, including the accelerometer, GPS, photos, contacts, e-mail, and SMS
· Create dynamic application Tiles to appear on the Start screen
· “Push” raw data notifications to running apps
· Understand and use the Windows Phone 7 phone execution model
· Efficiently store and retrieve data on WP7 phones
· Build “smart clients” that sync locally stored data with web services
· Manage growing app complexity through “separation of concerns” and MVVM (Model-View-View Model)
· Use TDD and automated testing to accelerate and streamline development
· Create casual, connected games and social apps
· Secure apps without incurring unacceptable tradeoffs
· Successfully deploy apps to the Marketplace