22
Craig Dunn Developer Evangelist Xamarin [email protected] @conceptdev Mobile apps with C# //build update edition Sydney, April 2014

Sydney Mobile .NET Developers talk (April 2014)

Embed Size (px)

DESCRIPTION

Introduction to Xamarin, //build update and how to architect cross-platform applications using PCLs and Shared Projects

Citation preview

Page 1: Sydney Mobile .NET Developers talk (April 2014)

Craig DunnDeveloper EvangelistXamarin

[email protected]@conceptdev

Mobile apps with C#//build update edition

Sydney, April 2014

Page 2: Sydney Mobile .NET Developers talk (April 2014)

Mobile apps with C#

XamarinC# on iOS and Android

//build

build a cross-plat app

get a Xamarin t-shirt

PCLVS2013

Page 3: Sydney Mobile .NET Developers talk (April 2014)

Modern language C#

Shared code

High performance

Page 4: Sydney Mobile .NET Developers talk (April 2014)

You

Us

Them

Page 5: Sydney Mobile .NET Developers talk (April 2014)

C# Development Environments

Page 6: Sydney Mobile .NET Developers talk (April 2014)

Mac OS X WindowsWindows

IDE

iOS

Android

Windows Phone

Windows Store

XamarinBusiness Edition

+

Mac+

C# Development Environments

Page 7: Sydney Mobile .NET Developers talk (April 2014)

iOS Apps in Visual Studio !?

Page 8: Sydney Mobile .NET Developers talk (April 2014)

//build

Page 9: Sydney Mobile .NET Developers talk (April 2014)

Miguel’s talk

http://channel9.msdn.com/Events/Build/2014/3-653

Go Mobile with C# and Xamarin

Page 10: Sydney Mobile .NET Developers talk (April 2014)

Roslyn & Xamarin

http://tirania.org/blog/archive/2014/Apr-09.html

• Keep track of Roslyn... ‘works’ now tho’ :-)

• Incorporate C# 6.0 features into Mono

• “The second one is that our compiler powers our Interactive C# Shell and we are about to launch something

very interesting with it. This functionality is not currently available on the open sourced Roslyn stack.”

• “Roslyn really shines for IDEs” so we’ll look at how to use it in Xamarin Studio / NRefactory

Page 11: Sydney Mobile .NET Developers talk (April 2014)

iOS UI Designer

Visual St

udio

coming..

.

Page 12: Sydney Mobile .NET Developers talk (April 2014)

Shared Projects• File Linking / VS 2012 Project Linker extension “on steroids”

• Viable alternative to Portable Class Libraries for some uses

• PCLs still great for component builders (esp with NuGet)

• Shared Projects might be better for app builders

• Coming to Visual Studio (download preview now) and Xamarin Studio (soon)

Page 13: Sydney Mobile .NET Developers talk (April 2014)

Portable Class Libraries• “PCL assembly” is

generated, shared

• limited framework code (predetermined by PCL profile)

• Dependency Injection for platform-specific features

• #if compiler directives not allowed

Page 14: Sydney Mobile .NET Developers talk (April 2014)

Shared Projects

• no separate “output assembly”, C# is compiled into the referencing apps

• use any framework code available on your target platforms

• use #if compiler directives

Page 15: Sydney Mobile .NET Developers talk (April 2014)

demo

Page 16: Sydney Mobile .NET Developers talk (April 2014)

“NDCPortable”

code walkthrough

https://github.com/conceptdev/xamarin-samples/tree/master/NDCPortable

Page 17: Sydney Mobile .NET Developers talk (April 2014)

go...

Page 18: Sydney Mobile .NET Developers talk (April 2014)

“NDCCloud”

code walkthrough

https://github.com/conceptdev/xamarin-samples/tree/master/NDCCloud

Page 19: Sydney Mobile .NET Developers talk (April 2014)

Xamarin t-shirt

1. Visit http://xamarin.com/sharp-shirt

2. Download, build & run

3. “fix” app and run again

4. Order your shirt - FREE!

Page 21: Sydney Mobile .NET Developers talk (April 2014)

https://github.com/conceptdev/xamarin-samples/NDCPortable https://github.com/conceptdev/xamarin-samples/NDCCloud

https://github.com/xamarin/mobile-samples/

LinksToday’s demo

General samples

Page 22: Sydney Mobile .NET Developers talk (April 2014)