24
WP8 Critical Developer Practices for Delivering Outstanding Apps Stefan Wick Principal Test Manager Windows Phone Developer Platform

WP8 Critical Developer Practices for Delivering Outstanding Apps

  • Upload
    ulric

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

WP8 Critical Developer Practices for Delivering Outstanding Apps. Stefan Wick Principal Test Manager Windows Phone Developer Platform. Agenda. Crash Analysis Unit Testing Memory & Performance World Ready WP7  WP8 Upgrade. App Crash Analysis. App Crash Analysis. - PowerPoint PPT Presentation

Citation preview

Page 1: WP8 Critical Developer Practices for Delivering Outstanding Apps

WP8 Critical Developer Practices for Delivering Outstanding AppsStefan WickPrincipal Test ManagerWindows Phone Developer Platform

Page 2: WP8 Critical Developer Practices for Delivering Outstanding Apps

Crash AnalysisUnit TestingMemory & PerformanceWorld ReadyWP7 WP8 Upgrade

Agenda

Page 3: WP8 Critical Developer Practices for Delivering Outstanding Apps

App Crash Analysis

Page 4: WP8 Critical Developer Practices for Delivering Outstanding Apps

Ways to track your crashes:Dev Center crash reports3rd party analytics productsRoll your own “Little Watson”

Common reasons for crashes:WebExceptionOutOfMemoryExceptionFormatException

App Crash Analysis

Page 5: WP8 Critical Developer Practices for Delivering Outstanding Apps

DevCenter Crash ReportsDemo

Page 6: WP8 Critical Developer Practices for Delivering Outstanding Apps

Unit Testing

Page 7: WP8 Critical Developer Practices for Delivering Outstanding Apps

Test Framework now in the ToolkitAvailable for WP7 and WP8Why automated tests?Structured quality controlPrevent regressionsTest more configurations in less time

Build a “suite of pain” for your app

Unit Test Framework

Page 8: WP8 Critical Developer Practices for Delivering Outstanding Apps

Unit TestingFocus on:• Overview of the framework• Write a new regression test

Demo

Page 9: WP8 Critical Developer Practices for Delivering Outstanding Apps

Memory & Performance

Page 10: WP8 Critical Developer Practices for Delivering Outstanding Apps

Make your good app GREATProfile for memory and executionLeverage Store Test Kit

Attend Oren Nachman’s perf talk (WPH312)

Profiling Tools

Memory & Performance

Page 11: WP8 Critical Developer Practices for Delivering Outstanding Apps

Monitor your apps mem usageMemory caps are enforced!Test with real world dataMonitor your heavy objects

A single UI control leak can cause the entire visual tree to be leaked !

Design with memory in mind!

Memory Considerations

Page 12: WP8 Critical Developer Practices for Delivering Outstanding Apps

Memory ProfilerFocus on:• Finding and fixing memory

leaks

Demo

Page 13: WP8 Critical Developer Practices for Delivering Outstanding Apps

Building World Ready Apps

Page 14: WP8 Critical Developer Practices for Delivering Outstanding Apps

Test for common coding mistakesRun tests on various localesTest with international input

Consider localizing your app contentWP8 & VS 2012 Tools make this easier

Increase reach and rating for your app!

World Ready Apps

Page 15: WP8 Critical Developer Practices for Delivering Outstanding Apps

World ReadyFocus on:• Globalization testing• Localization development

Demo

Page 16: WP8 Critical Developer Practices for Delivering Outstanding Apps

Upgrading from WP7 to WP8

Page 17: WP8 Critical Developer Practices for Delivering Outstanding Apps

WP7 apps run on WP8 as is“quirks mode” shim is enabled

Feature light-upLate-bind to enable WP8 light-up scenarios

Upgrade app version to 8.0Take full advantage of all new features and improvements

Find the upgrade path that is right for your app

Moving from WP7 to WP8

Page 18: WP8 Critical Developer Practices for Delivering Outstanding Apps

Upgrade guidance on MSDNBreaking changesDifferent screen sizesNew visuals for controls

Retest all code after upgradeInvestment in Unit Tests will pay off

Upgrading the source project to 8.0 disables the app compat shim

Binary vs. Source compat

Page 19: WP8 Critical Developer Practices for Delivering Outstanding Apps

Different approachesone app project with two configurationstwo app projects with shared librariestwo branches of the same app project

Maintain both 7.1 and 8.0 versions of your app, from shared code

Code Sharing

Page 20: WP8 Critical Developer Practices for Delivering Outstanding Apps

Upgrading to WP8Focus on:• Upgrade process & breaking

changes• Code sharing

Demo

Page 21: WP8 Critical Developer Practices for Delivering Outstanding Apps

Crashes are fixedUnit tests for regression controlMemory/performance improvedApp ready for the worldApp ready for Windows Phone 8

Recap

Page 22: WP8 Critical Developer Practices for Delivering Outstanding Apps

Ratings & Reviews after this talk

Recap

“Works great as advertised. Smooth and reliable. Only thing missing is feature xyz ….”

“Thanks for localizing to my native language”

“It’s even better now on my new Lumia 920”

Page 23: WP8 Critical Developer Practices for Delivering Outstanding Apps

ResourcesWP8 Performance & OptimizationThu 10:15 – 11:15| 92 Magellan

Windows Phone Toolkithttp://silverlight.codeplex.com

Page 24: WP8 Critical Developer Practices for Delivering Outstanding Apps

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.