330 likes | 495 Views
Building Windows Store Apps for iOS Developers Jump Start. Jaime Rodriguez Eric Jeffers Sean McCune. Today’s instructors . Jaime Rodriguez, @ jaimerodriguez Principal Evangelist, Microsoft Eric Jeffers Developer/Instructor, Big Nerd Ranch
E N D
Building Windows Store Apps for iOS Developers Jump Start Jaime Rodriguez Eric Jeffers Sean McCune
Today’s instructors Jaime Rodriguez, @jaimerodriguezPrincipal Evangelist, Microsoft Eric Jeffers Developer/Instructor, Big Nerd Ranch Sean McCune, @bnrseanDeveloper/Instructor, Big Nerd Ranch
Q&A Experts Matthias Shapiro - @matthiasshap Microsoft Windows & Windows Phone Evangelist Ben Riga- @benriga Microsoft Windows & Windows Phone Evangelist
Join the MVA Community! • 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)
Platform for buildingWindows Store Apps Jaime Rodriguez @jaimerodriguez
demo Windows 8 reimagined
Windows Store apps Run on myriad of devices running Windows 8 and Windows RT Available via Windows Store
Device continuum…. Phone Tablet Desktop Cocoa or Cocoa Touch + Objective-C + Open GL ES Mac OS X Apple iOS XAML + C# | VB | C++ + Direct X Microsoft Windows 8 + Windows Store Windows Phone
Windows 8 Platform Windows Store Apps Desktop Apps HTML JavaScript HTML / CSS XAML View JavaScript (Chakra) C C++ C# VB Model Controller C# VB C C++ WinRT APIs Devices & Printing Communication & Data Graphics & Media System Services .NET / SL Internet Explorer Win32 Application Model Windows Core OS Services Core
User interface Accessibility Data binding Live tiles and toast Input Controls HTML5/CSS XAML Devices Graphics and media Communications and data Services Portable Geo-location Direct3D Direct2D Direct Write Local storage SMS Skydrive Windows 8 APIs Playback Capture Streams Background transfer Sensors Proximity Bing PlayTo Canvas Syndication Networking Azure Mobile SVG Printing XML and JSON Contracts Xbox Live Fundamentals Application services Threading/timers Memory management Globalization Cryptography Authentication
User interface Accessibility Data binding Live tiles and toast Input Controls HTML5/CSS XAML Speech synthesis Devices Graphics and media Communications and data Services Portable Geo-location Point of service Direct3D Direct2D Direct Write Local storage SMS HTTP Skydrive Windows 8.1 new APIs Playback Capture Streams Background transfer Contacts Sensors Proximity USB Bing PlayTo Canvas WebGL Appoint-ments Syndication Networking Azure Mobile HID WiFi direct Bluetooth SVG Printing Scanning 3D printing XML and JSON Contracts PDF Xbox Live Fundamentals Application services Threading/timers Memory management Globalization Cryptography Authentication Diagnostics
demo Language projections
Language projections C++ App Windows Runtime Object (or Component) Written in C++, C#, VB Projection C#/VB App CLR Projection HTML App Chakra Projection Windows Metadata
Camera Capture Projections CameraCaptureUI^ dialog = refnewCameraCaptureUI(); dialog->CaptureFileAsync(CameraCaptureUIMode::Photo); CameraCaptureUIdialog = newCameraCaptureUI(); dialog.CaptureFileAsync(CameraCaptureUIMode.Photo); vardialog = newWindows.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 Microsoftdesign 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
HTML/Javascript • Standards-based • Native API access • WinJS HTML / CSS JavaScript WinRT Core
Direct X • For graphic intensive apps • Closest to OpenGL • Foundation for gaming frameworks Direct X C++, C# Chimpact WinRT Core
Today’s special! XAML • Closer to Cocoa Touch • XAML integrates with DirectX XAML C#, C++, VB WinRT Core
Take-Away: Windows Store apps Run 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)
Tools & Pre-requisites Jaime Rodriguez @jaimerodriguez
Setup/Pre-requisites Develop Windows 8+ Visual Studio 2012+ Microsoft Account Submit WACK Store Developer Account App portal Dev Center downloads
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 Virtualization Parallels 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
demo Visual Studio Theme, F1, F12, Go-to-definition, debugger, simulator, solution explorer, editor, object browser, intellisense, Find All references, key bindings, F5,F6
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… • Check out the iOS developer resources http://msdn.microsoft.com/library/windows/apps/jj945493 • Download the samples from DevCenter http://code.msdn.microsoft.com/windowsapps • Spend time in the design guidelines http://msdn.microsoft.com/library/windows/apps/hh770552