Shared Windows Core
Enterprise-class computing
to mobile devices
• Windows 8, Windows RT, Windows
Phone 8, Windows 8 Embed...
Windows Phone 8
800x480, 1280x720, 1280x768
Portrait, Landscape
<5 inch screen
Design a native UX for each platform!
LayoutAwarePage : Page
GridView
FlipView
ListView
AppBar
(“second” PivotPage
here)
LongListSelector
ApplicationBar
Pivot
PhoneApplicationPage
Windows 8
Windows Phone 8
C# / VB /
C++
C++ JS
XAML
DirectX 11.1
HTML5 &
CSS3
MVVM* www*
WinJS
LanguageUILayerFrameworks
M...
Portability to iOS, MacOS,
Linux, Android
Windows 8
Windows Phone 8
C# / VB /
C++
C++ JS
XAML
DirectX 11.1
HTML5 &
CSS3
MV...
View
ViewModel
CommandsData
Binding
Events
/Messages
View
ViewModel
Messages,
Callbacks
Model
Windows 8 Programming APIs
Windows Phone 8
supports:
 Managed app dev using the
WP7.1, WP8.0 .NET and
Windows Phone Runtime APIs
 Native app dev us...
Technical windows 8  and windows phone 8 apps
Upcoming SlideShare
Loading in …5
×

Technical windows 8 and windows phone 8 apps

422 views
360 views

Published on

Making Windows 8 and Windows Phone 8 apps

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

  • Be the first to like this

No Downloads
Views
Total views
422
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Enterprise class > windows NT kernel into phone (same as server, windows deskltop…)
    1.3b devices today!


    Driver model == same
  • Common UX!
  • Form factors are a major concern when designing the UI for a cross-platform app. You need to consider the different screen resolutions, screen sizes, and default device orientations. This will significantly impact how your app should display information to the user. It may not make sense to include all features of your Windows 8 app in your Windows Phone 8 app.
  • This is a comparative list of some significant differences that impact the UX on the two platforms. All of these considerations mean that each platform requires a separate UX design.
  • Each library of controls is optimized for that platform. It is also recommended that you design your own user controls separately for each platform. Not only does this maintain a consistent user-experience on each platform, but it reduces the likelihood of bugs from porting the XAML.

    Note: Visual Studio templates create a LayoutAwarePage, a subclass of the Page class in the raw API. LayoutAwarePage is a subclass of Page (the raw API) and provides some nice additional features:
    Application view state to visual state mapping
    GoBack, GoForward, and GoHome event handlers
    Mouse and keyboard shortcuts for navigation
    State management for navigation and process lifetime management
    A default view model
  • Each library of controls is optimized for that platform. It is also recommended that you design your own user controls separately for each platform. Not only does this maintain a consistent user-experience on each platform, but it reduces the likelihood of bugs from porting the XAML.

    Note: Visual Studio templates create a LayoutAwarePage, a subclass of the Page class in the raw API. LayoutAwarePage is a subclass of Page (the raw API) and provides some nice additional features:
    Application view state to visual state mapping
    GoBack, GoForward, and GoHome event handlers
    Mouse and keyboard shortcuts for navigation
    State management for navigation and process lifetime management
    A default view model
  • ViewModels act as converters between the way data is stored in the Model and the way data is presented in the View.

    MVVM is a variation of the MVC (Model-View-controller) pattern. One of the key distinctions between MVVM and MVC is that MVVM includes data binding.

    Message passing is a good way to communicate between ViewModels within an app.

    Using a Mutex can help synchronize communication between the ViewModels and the Model.
  • WP7 : Silverlight & XNA

    WP8: (+WP7) plus moar

    100,000 apps already wp7 .. Didn’t throw them away

    C++ example is SQLite
  • Technical windows 8 and windows phone 8 apps

    1. 1. Shared Windows Core Enterprise-class computing to mobile devices • Windows 8, Windows RT, Windows Phone 8, Windows 8 Embedded, and Windows Server 2012 • Running reliably on 1.3+ billion computing devices
    2. 2. Windows Phone 8 800x480, 1280x720, 1280x768 Portrait, Landscape <5 inch screen
    3. 3. Design a native UX for each platform!
    4. 4. LayoutAwarePage : Page GridView FlipView ListView AppBar
    5. 5. (“second” PivotPage here) LongListSelector ApplicationBar Pivot PhoneApplicationPage
    6. 6. Windows 8 Windows Phone 8 C# / VB / C++ C++ JS XAML DirectX 11.1 HTML5 & CSS3 MVVM* www* WinJS LanguageUILayerFrameworks MVVM: (Model, View, ViewModel) : Okra, MVVMLight, Caliburn.Micro … http://nuget.org/ WWW: jQuery, Cordova, Backbone, Knockout … 3
    7. 7. Portability to iOS, MacOS, Linux, Android Windows 8 Windows Phone 8 C# / VB / C++ C++ JS XAML DirectX 11.1 HTML5 & CSS3 MVVM* www* LanguageUILayerFrameworks Xamarin http://xamarin.com/ Monogame http://monogame.net/ Cordova/PhoneGap http://phonegap.com/ x Toolkits
    8. 8. View ViewModel CommandsData Binding Events /Messages View ViewModel Messages, Callbacks Model
    9. 9. Windows 8 Programming APIs
    10. 10. Windows Phone 8 supports:  Managed app dev using the WP7.1, WP8.0 .NET and Windows Phone Runtime APIs  Native app dev using Windows Runtime and Win32  Games dev using the WP7.1 XNA framework  Games dev using Direct3D or DirectX Windows Phone 8 Programming APIs .NET API for Windows Phone Windows Runtime Win32 & COM Managed Managed & Native Native WP7.1 XAML & C#/VB WP8.0 XAML & C#/VB WP8.0 Games DirectX/Direct 3D & C++ WP7.1 XNA & C#/VB WP8.0 XAML & C#/VB with Direct3D Graphics + C++ + C++

    ×