jaime rodriguez eric jeffers sean mccune. today’s instructors jaime rodriguez, @jaimerodriguez...

33
Jaime Rodriguez Eric Jeffers Sean McCune Building Windows Store Apps for iOS Developers Jump Start

Upload: mildred-mcbride

Post on 23-Dec-2015

217 views

Category:

Documents


3 download

TRANSCRIPT

Jaime RodriguezEric Jeffers Sean McCune

Building Windows Store Apps for iOS Developers Jump Start

Today’s instructors

Jaime Rodriguez, @jaimerodriguez Principal Evangelist, Microsoft

Eric Jeffers Developer/Instructor, Big Nerd Ranch

Sean McCune, @bnrsean Developer/Instructor, Big Nerd Ranch

Q&A Experts

Matthias Shapiro - @matthiasshap

Microsoft Windows & Windows Phone Evangelist

Ben Riga- @benriga

Microsoft Windows & Windows Phone Evangelist

Course Topics

Building Windows Store Apps for iOS Developers Jump Start

01 | Introduction to the Windows Store Platform and the tools

02 | C# for Objective-C developers

03 | Async programming & Networking intro

Meal Break, around noon PST 45 to 60 mins

04 | Introduction to XAML & UI Patterns for XAML apps

05 | App Model & Storage

06 | Contracts

07 | Notifications

08 | Windows Store APIs

• Microsoft Virtual Academy– Free online learning tailored for IT Pros and Developers – Over 1.2M registered users– Up-to-date, relevant training on variety of Microsoft

products

• “Earn while you learn!” – Get 50 MVA Points for this event!– Visit http://aka.ms/MVA-Voucher – Enter this code: iOSJS (expires 8/18/2013)

Join the MVA Community!

Platform for buildingWindows Store AppsJaime Rodriguez@jaimerodriguez

Windows 8 reimagined

demo

Windows Store apps

Available via Windows Store Run on myriad of devices runningWindows 8 and Windows RT

Device continuum….

Tablet Phone Desktop

Apple

Microsoft

Mac OS X iOS

Windows Phone

Cocoa or Cocoa Touch + Objective-C + Open GL ES

XAML + C# | VB | C++ + Direct X

Windows 8 + Windows Store

Windows 8 Platform

Windows Store Apps

HTMLJavaScri

pt

CC++

C#VB

Desktop Apps

Win32

.NET / SL

Internet Explore

r

Communication

& Data

Application Model

Devices & Printing

WinRT APIsGraphics &

Media

Syst

em

Serv

ices

JavaScript(Chakra)

CC++

C#VB

XAML HTML / CSSVie

wM

od

el

Contr

olle

r

Windows Core OS ServicesCore

Windows Run-time (WinRT)

Windows 8 APIsUser interface

Fundamentals

Devices Graphics and media Communications and data

ServicesGeo-

location

Proximity

Direct3D Direct2D Direct Write

PlayTo

Contracts

Bing

Azure Mobile

HTML5/CSS XAMLInput Controls

Authentication

Portable

Sensors Playback Capture

Printing

SVGCanvas

Local storage SMS

Streams Background transfer

Syndication

Networking

XML and JSON

Skydrive

Live tiles and toastAccessibility Data binding

Application services

Threading/timers

Memory management Globalization Cryptography

Xbox Live

Windows 8.1 new APIsUser interface

Fundamentals

Devices Graphics and media Communications and data

ServicesGeo-

location

Proximity

Direct3D Direct2D Direct Write

PlayTo

Contracts

Bing

Azure Mobile

HTML5/CSS XAMLInput Controls

Authentication

Bluetooth

USB

HID WiFi direct

Point of service

3Dprinting Scanning

WebGL

HTTP

Contacts

Appoint-ments

PDF

Speech synthesis

Diagnostics

Portable

Sensors Playback Capture

Printing

SVGCanvas

Local storage SMS

Streams Background transfer

Syndication

Networking

XML and JSON

Skydrive

Live tiles and toastAccessibility Data binding

Application services

Threading/timers

Memory management Globalization Cryptography

Xbox Live

Language projections

demo

Language projections

WindowsRuntime

Object(or Component)

Writtenin C++, C#, VB

Windows Metadata

C++ App

Pro

jecti

on

CLR

C#/VB App

Pro

jecti

on

HTML AppCh

akra

Pro

jecti

on

Camera Capture Projections CameraCaptureUI^ dialog = ref new CameraCaptureUI();dialog->CaptureFileAsync(CameraCaptureUIMode::Photo);

CameraCaptureUI dialog = new CameraCaptureUI();dialog.CaptureFileAsync(CameraCaptureUIMode.Photo);

var dialog = new Windows.Media.Capture.CameraCaptureUI();dialog.captureFileAsync(Windows.Media.Capture.CameraCaptureUIMode.photo)

Traits of a great Windows Store App

Leverage Microsoft design

Be Fast and fluid

Snap and scale beautifully

Use the right contracts

Invest in a great Tile

Feel connected and alive

Roam to the cloud

Embrace Microsoft design principles

UX must-read/watch list Eight traits of a great Windows Store app

http://channel9.msdn.com/Events/BUILD/BUILD2011/BPS-1004 Jensen Harris, Microsoft

Designing User Interfaces for Windows http://channel9.msdn.com/Events/Build/2013/2-168 Paul Gusmorino, Moneta Ho Jushner

Design differences between iOS and Windows 8 http://channel9.msdn.com/Events/Build/2013/2-004, Bart Claeys, Ratio Interactive

Choosing a presentation stack

HTML/Javascript

• Standards-based

• Native API access

• WinJS

WinRT

JavaScript

HTML / CSS

Core

Direct X

• For graphic intensive apps

• Closest to OpenGL

• Foundation for gaming frameworks

WinRT

C++, C#

Direct X

Core

Chimpact

XAML

• Closer to Cocoa Touch

• XAML integrates with DirectX

WinRT

C#, C++, VB

XAML

Core

Today’s special!

Take-Away: Windows Store appsRun on Windows & Windows RT (ARM)

Distributed via store

Leverage Microsoft Design Language

Lots of choice on UI and programming language

One run-time: Windows Runtime (aka WinRT)

Q&A

Tools & Pre-requisites Jaime Rodriguez @jaimerodriguez

Setup/Pre-requisites

DevelopWindows 8+ Visual Studio 2012+ Microsoft Account

SubmitWACK Store Developer Account

Dev Center downloads App portal

Visual Studio ‘flavors’ Visual Studio Express is FREE

Everything you need to write a great Windows store app is included here

Visual Studio has Professional, Premium, Ultimate Unit testing frameworks and automation tools Code coverage analysis Agile project management tools Team Foundation Server ( source control and ALM )

90-day trials and lots of programs to get it for very low cost (often free)

Windows 8.x on Apple hardware

Bootcamp VirtualizationParallels VMWare Virtual box

http://msdn.microsoft.com/en-US/library/windows/apps/jj945492

Running Windows 8 on Apple hardware ~40 GB disk partition 4 GB memory (recommended, 2GB works)

Install the tools (parallels, VMWare) Avoid hyper-v option if not coding for

phone Setup your key bindings, short cuts Multi-monitor or high-res monitor helps

Theme, F1, F12, Go-to-definition, debugger, simulator, solution explorer, editor, object browser, intellisense, Find All references, key bindings, F5,F6

demoVisual Studio

In-between versions today… VS2012 for building Windows 8.0 apps

VS2013 for building Windows 8.1 apps Non-Express SKUs can open 8.0 projects and support them

SKUs work side-by-side

Tools getting started tips…

1. Check out the iOS developer resources http://msdn.microsoft.com/library/windows/apps/jj945493

2. Download the samples from DevCenterhttp://code.msdn.microsoft.com/windowsapps

3. Spend time in the design guidelineshttp://msdn.microsoft.com/library/windows/apps/hh770552

Q&A