Top Banner
Team Technologies LLC Oleg Mobile Developer Nazar Mobile Developer Лекція 8 від провідних .NET розробників з
44

Lecture 08 Xamarin

Apr 12, 2017

Download

Software

Maksym Davydov
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Lecture 08 Xamarin

Team Technologies LLC

OlegMobile Developer

NazarMobile Developer

Лекція №8 від провідних .NET розробників з

Page 2: Lecture 08 Xamarin

Developing Cross-Platform Applications

Page 3: Lecture 08 Xamarin

Agenda• Why Native? • What is Xamarin? • Architecting Mobile Apps • Xamarin Forms • Demo

Page 4: Lecture 08 Xamarin

Why Native?

Page 5: Lecture 08 Xamarin

The Anatomy of a Native App

Xamarin apps look and feel native because they are native

Native User Interfaces Native API Access Native Performance

Page 6: Lecture 08 Xamarin

Cross-Platform Mobile Development

• Building high-quality Apps is hard:

• Different presentation styles, interaction styles and software stacks • Devices have different screen sizes, input modes and hardware capabilities • New devices and OS versions are introduced multiple times per year • Network connectivity and power levels

fluctuate widely in typical usage scenarios • New consumer applications regularly

extend and revise the standards andset the bar higher for good mobile applications

Page 7: Lecture 08 Xamarin

Xamarin.iOS does full Ahead Of Time (AOT) compilation to produce an ARM binary for Apple’s App Store.

Xamarin.Android takes advantage of Just In Time (JIT) compilation on the Android device.

Page 8: Lecture 08 Xamarin

What is Xamarin?

Page 9: Lecture 08 Xamarin

Xamarin brings open source .NET to mobile development, enabling every developer to build truly native apps for any device in C# and F#.

What is Xamarin?

Page 10: Lecture 08 Xamarin

What is Xamarin?

Page 11: Lecture 08 Xamarin

Make it fast, easy and fun to create great mobile apps

Xamarin’s Mission

Page 12: Lecture 08 Xamarin

Xamarin Mobile Lifecycle

Page 13: Lecture 08 Xamarin

Architecting Mobile Apps

Page 14: Lecture 08 Xamarin

Build App Multiple Times

• Expensive to staff multiple platform-specific teams

• Expensive to maintain multiple code bases

• Slows innovation

Page 15: Lecture 08 Xamarin

The Write-Once-Run-Anywhere Approach

• Non-standart UI • Limited API access • Non-native performance • Poor user experience

Page 16: Lecture 08 Xamarin

Xamarin’s Unique Approach

Native With Code Sharing

Page 17: Lecture 08 Xamarin

Xamarin Designer for iOS in Xamarin Studio

Page 18: Lecture 08 Xamarin

Anything you can do in Objective-C or Java can be done in C# with Xamarin using Visual Studio

Page 19: Lecture 08 Xamarin

Xamarin Forms

Page 20: Lecture 08 Xamarin

Portable Class Libraries

Page 21: Lecture 08 Xamarin

Xamarin Architecture Choices

Page 22: Lecture 08 Xamarin

Xamarin.Forms

Quickly and easily build native user interfaces using shared code

Xamarin.Forms elements map to native controls and behaviors

Mix-and-match Xamarin.Forms with native APIs Shared App Logic

Shared UI Code

Page 23: Lecture 08 Xamarin

Pages

Content MasterDetail Navigation Tabbed Carousel

Page 24: Lecture 08 Xamarin

Layouts

Stack Absolute Relative Grid ContentView ScrollView Frame

Page 25: Lecture 08 Xamarin

Controls

ActivityIndicator BoxView Button DatePicker Editor

Entry Image Label ListView Map

OpenGLView Picker ProgressBar SearchBar Slider

Stepper TableView TimePicker WebView EntryCell

ImageCell SwitchCell TextCell ViewCell

Page 26: Lecture 08 Xamarin

NuGet Package Manager

NuGet support combined with the Xamarin Component Store gives Xamarin developers the most comprehensive ecosystem of libraries at their fingertips

Page 27: Lecture 08 Xamarin

Why Xamarin?

Page 28: Lecture 08 Xamarin

Better Mobile Productivity

Page 29: Lecture 08 Xamarin
Page 30: Lecture 08 Xamarin
Page 31: Lecture 08 Xamarin
Page 32: Lecture 08 Xamarin
Page 33: Lecture 08 Xamarin
Page 34: Lecture 08 Xamarin
Page 35: Lecture 08 Xamarin
Page 36: Lecture 08 Xamarin
Page 37: Lecture 08 Xamarin
Page 38: Lecture 08 Xamarin

Event Tracking

Page 39: Lecture 08 Xamarin

Issue Tracking

Page 40: Lecture 08 Xamarin

Issue Tracking

Page 41: Lecture 08 Xamarin

Issue Tracking - Detail

Page 42: Lecture 08 Xamarin

Issue Tracking – Device & User Data

Page 43: Lecture 08 Xamarin

Demo

Page 44: Lecture 08 Xamarin

Q & A