WINDOWS PHONE APPS IN C++

17
Template designed by C++ Windows Phone Apps Mirco Vanini [email protected] http://mircovanini.blogspot.it/

Transcript of WINDOWS PHONE APPS IN C++

Page 1: WINDOWS PHONE APPS IN C++

Template designed by

C++ Windows Phone Apps

Mirco Vanini [email protected]://mircovanini.blogspot.it/

Page 2: WINDOWS PHONE APPS IN C++

Slide con sponsor che arriva a qualche giorno dalla conferenza

sponsor

Page 3: WINDOWS PHONE APPS IN C++

adam | factory analisi, progettazione, consulenza, alm, formazione

Microsoft MVP for Windows EmbeddedXeDotNet

TinyCLR.it

@MircoVanini

http://it.linkedin.com/in/proxsoft

http://mvp.microsoft.com/it-it/MVP/Mirco%20Vanini-4039714

chi sono

Page 4: WINDOWS PHONE APPS IN C++

How & where C++ is supported

When and why to use C++

Introduction to the Windows (Phone) Runtime

Sharing C++ code (demo)

agenda

Page 5: WINDOWS PHONE APPS IN C++

how: windows phone C++ support

Can be used in any Windows Phone App

Visual Studio Express 2012/3 for Windows Phone

Visual Studio 2015 Community Edition

Same C++ compiler & CRT used in Windows 8 / 10

Subset of C++ 11 standard features

Page 6: WINDOWS PHONE APPS IN C++

sampling of C++ 11 standard features

RValue references Forward declared enums Bidirectional fences

static_assert Alignment Data-dependency ordering

Auto Standard-layout and trivial types exception_ptr

Trailing return types Extended friend declarations Thread-local storage

Lambdas Local and unnamed types as template arguments __func__

Decltype Range-based for-loop C99 preprocessor

Right angle brackets override and final long long

extern templates Minimal GC support Strongly typed enums

nullptr Atomics

C++11 Features in Visual C++ 11

Announcing the Visual C++ Compiler November 2013

Page 7: WINDOWS PHONE APPS IN C++

why use C++

Reusability: You have some legacy code around that you really don't want to rewrite but still use in your app

Portability: You want to use the code you're about to write on multiple platforms

Performance: You really are in need for these last bits of performance benefits and know what you're doing

Personal Preference: You are a developer who really favors C++ over e.g. C# or you have significantly better skills in C++

Page 8: WINDOWS PHONE APPS IN C++

where you can use C++

All Windows Phone 8 / 10 apps can use native code…XAML apps (8.1)XAML apps mixed with D3D and WinRTPure native D3D apps/gamesC++ libraries: Dynamic Link Libraries, Static LibsWinRT C++ Components

...not all apps need to use native codeWP 7.0Silverlig

ht

WP 7.5Silverlig

ht

WP 8.0Silverlig

ht

WP 8.1Silverlig

ht

WP 8.1WinRT

WP 10UWP

Page 9: WINDOWS PHONE APPS IN C++

why stay on windows phone silverlight?

Existing Code Investment

Existing Install Base

Not yet convergedCamera Lenses

VoIP

Lock Screen Wallpaper.

Clipboard API

Simple Sound Effects (XNA)

Run Under Lock Screen

Page 10: WINDOWS PHONE APPS IN C++

why retarget to windows phone silverlight 8.1?

Access to SD Cards

Geofencing

App to App SSO (Single Sign-On)

App to App sharing

And much more…

Page 11: WINDOWS PHONE APPS IN C++

windows (phone) runtime

Why learn about WinRT?WinRT is used in the application model

C++ code called from XAML uses WinRT

Phone Platform APIs are built using WinRT

More Convergence

Latest Tooling

New Controls

Future Investment

Same ECMA-335 standard as .NET

Type-System ProjectionsCLR Projection

Framework Projection

Page 12: WINDOWS PHONE APPS IN C++

a closer look at what's available

Direct3D with XAML" C++ application actually creates a C# main project and a separate Windows Runtime Component in C++.

VS2013VS2012

Page 13: WINDOWS PHONE APPS IN C++

a closer look at what's availableVS2015 RC

Page 14: WINDOWS PHONE APPS IN C++

sharing C++ code

Page 15: WINDOWS PHONE APPS IN C++

demosharing C++ code

Page 16: WINDOWS PHONE APPS IN C++

recap

Welcome back to C++!

Page 17: WINDOWS PHONE APPS IN C++

Grazie a tutti per la partecipazione

Riceverete il link per il download a slide e demo via email nei prossimi giorni

Per contattarmi

[email protected]

Grazie