Your SlideShare is downloading. ×
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Get a flying start with Windows Phone 7 - NDC2010
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Get a flying start with Windows Phone 7 - NDC2010

2,031

Published on

Windows Phone 7 is brand new, totally fresh operating system that will appear in phones before Christmas. The new platform is a complete rewrite and offers lots of interesting opportunities to third …

Windows Phone 7 is brand new, totally fresh operating system that will appear in phones before Christmas. The new platform is a complete rewrite and offers lots of interesting opportunities to third party developers. The development platform for Windows Phone 7 is all based around managed code and the tools and frameworks you already know and love. This presentation you will give you an overview of the Windows Phone 7 development platform, and how you can leverage your existing Silverlight skills to build great applications for the Windows Phone 7 marketplace.

The session assumes some prior knowledge of Silverlight, as the focus of this presentation will be features that are specific to the phone. It will not only cover the basics of the Windows Phone 7 platform, but also how you can re–use many of the same patterns, frameworks, techniques and practices that you use when building regular Silverlight applications.

Published in: Technology, Sports
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,031
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
77
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. GET A FLYING START WITH WP7
    JONAS FOLLESØ
    jonas@follesoe.no
    http://jonas.follesoe.no
    @follesoe
  • 2. ABOUT ME
    JONAS FOLLESØ
    jonas@follesoe.no
    http://jonas.follesoe.no
    @follesoe
  • 3. AGENDA:- TDD- RX & ASYNC- MVVM & IOC- BLEND 4- LOCATION- NOTIFICATION
    http://www.flickr.com/photos/20792787@N00/2248623391/
  • 4. KNOW SILVERLIGHT?THEN YOU KNOW WP7!
  • 5. FLIGHTS NORWAYMONITORARRIVALS AND DEPARTURES
    http://www.flickr.com/photos/svenwerk/2181849280/
  • 6. FLIGHTS NORWAYWHAT WE ARE GOING TO BUILD
  • 7. TDD FUNDAMENTALPRACTICE
    http://www.flickr.com/photos/mad_house_photography/4440871380/
  • 8. WP7SILVERLIGHT 3.NET 4.03 RUNTIMESMAKES THINGS HARD
    http://www.flickr.com/photos/tambako/3974809361/
  • 9.
    • Unit Testing and TDD is a waste of time
    • 10. Silverlight Unit Test Framework from Microsoft
    • 11. Silverlight Port of NUnit
    • 12. Assembly Sharing
    • 13. Other
  • 14. TDD IS ALL ABOUT FLOW
    http://www.flickr.com/photos/zenonline/3431365556/
  • 15. FASTER FEEDBACK CYCLE FOR SILVERLIGHT TDD
  • 16. TDDDEMO
    http://www.flickr.com/photos/infomofo/1405303478/
  • 17. RESTSERVICESWITH FLIGHT INFORMATION
    http://flydata.avinor.no/
    http://open.bekk.no/2009/12/13/hva-skjer-nar-man-gir-bort-flydata-gratis/
  • 18. http://flydata.avinor.no/XmlFeed.asp?airport=OSL
    <?xmlversion="1.0"encoding="iso-8859-1"?>
    <airportname="OSL">
    <flightslastUpdate="2010-06-14T06:29:12">
    <flightuniqueID="1054121">
    <airline>DY</airline>
    <flight_id>DY422</flight_id>
    <dom_int>D</dom_int>
    <schedule_time>2010-06-12T08:55:00</schedule_time>
    <arr_dep>D</arr_dep>
    <airport>MOL</airport>
    </flight>
    </flights>
    </airport>
  • 19. http://flydata.avinor.no/airlineNames.asp
    <?xmlversion="1.0"encoding="iso-8859-1"?>
    <airlineNames>
    <airlineNamecode="AA"name="American Airlines"/>
    <airlineNamecode="AAF"name="AigleAzur"/>
    <airlineNamecode="AAG"name="Atlantic Airlines"/>
    <airlineNamecode="AAT"name="Austrian Airtransport"/>
    <!-- ... -->
    </airlineNames>
  • 20. http://flydata.avinor.no/airportNames.asp
    <?xmlversion="1.0"encoding="iso-8859-1"?>
    <airportNames>
    <airportNamecode="OSD"name="Østersund"/>
    <airportNamecode="OSH"name="Oshkosh"/>
    <airportNamecode="OSI"name="Osijek"/>
    <airportNamecode="OSK"name="Oskarshamn"/>
    <airportNamecode="OSL"name="Oslo"/>
    <!-- ... -->
    </airportNames>
  • 21. http://flydata.avinor.no/flightStatuses.asp
    <?xmlversion="1.0"encoding="iso-8859-1"?>
    <flightStatuses>
    <flightStatuscode="N"statusTextEn="New info" />
    <flightStatuscode="E"statusTextEn="New time" />
    <flightStatuscode="D"statusTextEn="Departed" />
    <flightStatuscode="A"statusTextEn="Arrived" />
    <flightStatuscode="C"statusTextEn="Cancelled" />
    </flightStatuses>
  • 22. ALL NETWORKING IN SILVERLIGHT IS ASYNCHRONOUS
  • 23. RXMAKING ASYNCPROGRAMMINGLESS DIFFICULT
    http://www.flickr.com/photos/adewale_oshineye/3590140051/
  • 24. COMPOSING ASYNCHRONOUS AND EVENT-BASED PROGRAMS USING OBSERVABLE COLLECTIONS
  • 25. varmove=Observable.FromEvent(LayoutRoot, "MouseMove");
    vardown=Observable.FromEvent(LayoutRoot, "MouseLeftButtonDown");
    varup=Observable.FromEvent(LayoutRoot, "MouseLeftButtonUp");
    IObservable<Point>whereUserIsDragging=
    move.SkipUntil(down)
    .TakeUntil(up)
    .Repeat()
    .Select(e=>e.EventArgs.GetPosition(LayoutRoot));
    whereUserIsDragging.Subscribe(p=>Paint(p.X, p.Y));
  • 26. RX DEMO
  • 27. MVVMPATTERN FOR BINDABLE UI
  • 28. APP LOGIC IN CODE BEHIND IS HARD TO TEST AND MAINTAIN
    VIEW
    XAML
    DataModel
    Code-Behind
    EventHandlers
  • 29. SEPARATE USINGMVVM
    VIEW
    XAML
    Code-Behind
    Change notification
    Data-binding and commands
    VIEW MODEL
    Data Model
    State + Operations
  • 30. COMMUNICATION
    View Model
    View Model
    App Service
    View Model
    View Model
    View Model
    App Service
    View Model
  • 31. EVENT AGGREGATOR
    View Model
    View Model
    App Service
    View Model
    Event Aggregator
    App Service
    View Model
    View Model
    View Model
  • 32. VIEW MODEL COMMUNICATION
    View
    View
    XAML
    XAML
    Code-Behind
    Code-Behind
    View Model
    Data Model
    View Model
    State + Operations
    Data Model
    State + Operations
    Message
    Publish messages
    View
    XAML
    Code-Behind
    Subscribe to messages
    View Model
    Event Aggregator
    Message
    State + Operations
  • 33. MVVM SHOULD BE LIGHT WEIGHT
    http://www.flickr.com/photos/treehouse1977/2892417805/
  • 34. http://mvvmlight.codeplex.com/
  • 35. MVVM DEMO
    http://www.flickr.com/photos/20792787@N00/2248623391/
  • 36. DIKEEP THINGS SEPARATE
    More in-depth information:
    The Dependency Inversion Principle Applied
    Fredrik Kalseth, Friday 10:20
    http://www.flickr.com/photos/omarrun/4672531253/in/photostream
  • 37. DI LETS YOU INJECT EXTERNALDEPENDENCIES
  • 38. IMPORTANT TECHNIQUE ON WP7 TO SIMULATE SENSORS
    http://www.flickr.com/photos/howzey/2880455762/
  • 39.
  • 40. ISOLATED STORAGEFOR SIMPLE DATA STORAGE
  • 41. NOSQLFOR WP7?
  • 42. DI &ISOLATED STORAGEDEMO
    http://www.flickr.com/photos/omarrun/4672531253/in/photostream
  • 43. METRO DESIGN LANGUAGE
  • 44. PIVOT CONTROL
  • 45. HUB CONTROL
  • 46. BLEND 4DEMO
  • 47. LOCATION AWARENESSIS KEY WHEN ON THE GO
  • 48. SAME API IN .NET 4 & WP7
    http://www.flickr.com/photos/photograham/198324031/
  • 49. LOCATION AWARENESSDEMO
  • 50. PUSH NOTIFICATIONSKEEP YOU INFORMED
  • 51. WP7 PUSH NOTIFICATIONS
    Your WP Application
    Hand off channel URL
    2
    Your Web Application
    PUSH CLIENT
    Notification Namespaces
    Push Library
    4
    Push
    message
    3
    Push message
    1
    Open Channel
    Microsoft Push Notification Services
  • 52. PUSH NOTIFICATIONS DEMO
    http://www.flickr.com/photos/kozloski/2306510520/
  • 53. SUMMARY:- TDD- RX & ASYNC- MVVM & IOC- BLEND 4- LOCATION- NOTIFICATION
    http://www.flickr.com/photos/20792787@N00/2248623391/
  • 54. FORK ME ON GITHUB
    http://github.com/follesoe/FlightsNorway
  • 55. THANKS!
    JONAS FOLLESØ
    jonas@follesoe.no
    http://jonas.follesoe.no
    @follesoe

×