Top Banner
“antes da 1º linha de código”; Aplicativos Corporativos Cross Plataforma com Xamarin e Azure Mobile Apps >
63

Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Jul 18, 2015

Download

Mobile

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: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

“antes da 1º linha de código”;

Aplicativos Corporativos

Cross Plataforma com

Xamarin e Azure Mobile

Apps

>

Page 2: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

[email protected]

William S. Rodriguez

arquiteto de soluções

móveis

>

Page 3: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

“no menor tempo ($) possível”;

Construir um módulo

mobile de um sistema

em produção

desafio

>

Page 4: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

“Mais de 140 ferramentas & frameworks no mercado”;

O que não queremos?

escolha

>

Page 5: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

O mesmo aplicativo várias vezes

Java

Eclipse

Android App

C#

Visual Studio

Windows App

Objective-C

XCoce

iOS App

“Abordagem de Silos”;>

Page 6: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Três vezes mais problemas

Maior tempo para

lançamento de novas

funcionalidades e

dificuldades para

execução de teste

Sobrecarga na gestão Investimento em

hardware diferentes

Perfis diferentes de

profissionais e

linguagens

incompatíveis entre si

(JAVA, Objective C, C#)

Page 7: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

“Comece pelo Android é mais fácil!”

Evitar armadilhas ou

pegadinhas

escolha

>

Page 8: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Dispositivos Android

Page 9: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

API’s mais complexas

(difíceis de utilizar)

Aplicativos Android

custam de 2 a 3 vezes

mais para desenvolver

do que Aplicativos iOS

Fragmentação de

ambiente (8 versões do

OS e mais de 7mil

dispositivos diferentes)

Baixa produtividade

Mais fácil... Mesmo?

Page 10: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

1 Mês iOS + 2 Meses para Android = 1 projeto de 3 meses;

Fugir de utopias,

unicórnios e arco-íris

escolha

>

Page 11: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

“Mesmo se você tiver o mesmo esforço de desenvolvimento para todas as trêsplataformas ainda terá três meses de projeto”

+ =

Page 12: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Aprender com os erros

dos outros

escolha

Page 13: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps
Page 14: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Mark Zuckerberg

"The biggest mistake we made

as a company was betting too

much on HTML5 rather than

native"

>

Page 15: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Mas HTML5 é o futuro!?

HTML5 APP NATIVA

Page 16: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Abordagens mágicas!?

escolha

“Escreva uma vez e rode em qualquer lugar”>

Page 17: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Abordagem da “caixa mágica preta”

Black Box

Page 18: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Altas taxas de abandono e desperdício de investimento

Apresenta problemas de

compatibilidade e

performance (não

nativa)

Experiência do usuário

pobre e Interfaces fora

do padrão;

Difícil manutenção e

debug

Não utiliza toda a

capacidade de recursos

das plataformas de

forma homogenia e tem

acesso limitados a API’s

Page 19: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

O que queremos?

escolha

Isolamos os “problemas” e agora já podemos decidir.>

Page 20: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

A melhor experiência possível para os usuários, com as premissas;

Experiências nativas

acesso a GPU, Stylus,

GPS, Acelerômetro e

ficar aberto a

tendências e novas

tecnologias.

Produtividade e

reaproveitar o código

Suporte ALM e TFS,

evolução continua e

interação com

componentes e

bibliotecas de terceiros

Aproveitar intelecto

(programadores C#)

Page 21: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Escolhemos Xamarindecisão

Por que?>

Page 22: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Xamarin utiliza uma Abordagem Única

C#

Page 23: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Mobile Enterprise ApplicationPlatform

Construir App's Nativas Testar Monitorar

Page 24: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Enterprise Customers

decisão

“Quem já usa?”>

Page 25: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps
Page 26: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

“With Xamarin, developers

combine all of the productivity

benefits of C#, Visual Studio

2013 and Windows Azure with

the flexibility to quickly build for

multiple device targets.”

S.Somasegar

Corporate Vice President, Microsoft

Page 27: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps
Page 28: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

asyncPCL &Shared Projects

Tecnologias Microsoft

Page 29: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Como funciona

decisão

Page 30: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Aplicações Nativas

Interface de Usuário Nativa

High-fidelity API Access

Native Performance

App’s são construídas utilizando interface e ,

controles padrão permitindo interações fáceis e

familiares

App’s têm acesso a toda a gama de funcionalidade

exposta pela plataforma independente de

dispositivo

App’s tiram vantagem de aceleração de hardware

e recursos específicos da plataforma, e são

compilados como binários nativos, não

interpretadas em tempo de execução.

Page 31: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Código C#

Compartilhado no Backend

Interfaces

nativas C#

Page 32: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Por que Xamarin?

Compartilhe o código que faz sentido, tire

vantagem da UX nativa de cada plataforma.

Page 33: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Xamarin é 100% Código Nativo

Debug de objetos Java

e Objective C

Interoperabilidade com

qualquer linguagem

Utilizar bibliotecas

Android e iOS de forma

nativa

Empacotar e

disponibilizar uma

aplicação nativa única

Page 34: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Não só para Smartphones e Tablets

Nearables

Xamarin.Robotics

Wearables

http://bit.ly/xamarin-nearables

http://bit.ly/xamarin-robotics

http://bit.ly/xamarin-wearables

Page 35: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Performance NativaApp’s construídas com Xamarin são nativas pois utilizam código

nativo.

Xamarin.iOS executa compilação Ahead Of

Time (AOT) produzindo o binário (.app) ARM

para Apple App Store.

Xamarin.Android tira vantage da compilação

Just In Time (JIT) nos dispositivos Android.

Page 36: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Qualquer coisa que você conseguir fazer utilizando

Objective-C, Swift, ou Java! Pode ser feita com

C# e Xamarin no Visual Studio

Page 37: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Visual Studio como IDE

Desenho de telas

integrado (iOS, Android

e Windows Phone)

Suporte a PCL

DLL portáveis

Uso de uma única

linguagem de

desenvolvimento

Team Foundation Server

(TFS), NuGet e

ReSharper

Page 38: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Compartilhamento de

Código

decisão

Page 39: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Compartilhamento de Código

C# App Logic

C# User Interface 30%

70%

Media de Compartilhamento>

Page 40: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Desenvolvimento Acelerado com Compartilhamento de Código

Estatísticas de construção utilizando código compartilhado com Xamarin, para um aplicativo

simulador de circuitos em tempo real utilizado para desenha circuitos analógicos e digitais.

User Interface Code

App Logic

70%

30%

86%

14%

85%

15%

88%

12%

{ iOS } { Android } { Windows RT } { OS X }

http://icircuitapp.com/>

Page 41: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Escrever uma vez só a interface que é reutilizada

nas 3 plataformas?

Page 42: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Construa interfaces Nativas para iOS, Android e

Windows Phone a partir de uma única base de código

C# compartilhada.

Page 43: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Código C#

Compartilhado no Backend

Xamarin.Forms = Interface do usuário compartilhada C#

Page 44: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Xamarin.Forms

Pages

Layouts

Page 45: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Xamarin.FormsControles

Page 46: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Mesmo código, três plataformas

Page 47: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Compatibilidade e

Atualizações?

preocupações

Page 48: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Compatibilidade e Atualizações

Única solução Cross-

plataforma a suportar

Amazon Fire

Única solução Cross-

plataforma a suportar

Wearables e Nearables

100% de suporte

Android L

100% de suporte ao iOS

8 (no mesmo dia)

Page 49: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Suportar o nosso

processo de ALM e

DevOps?

preocupações

Page 50: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Team Foundation Server

Agilidade para o time

de desenvolvimento

Build, deploy e

Integração Continua

(DevOps)

Debug para iOS,

Android e Windows

Controle e visibilidade

para gestores

(TFS portal)

Page 51: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Como garantir

Qualidade?

preocupações

Qualidade em mobile é vital>

Page 52: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Xamarin Test Cloud

https://testcloud.xamarin.com/devices>

Page 53: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Xamarin Profiler (beta)

Page 54: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Como monitorar a

aplicação no dispositivo?

preocupações

“Se algo der errado? Envie o seu smartphone para a gente!”>

Page 55: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps
Page 56: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Como conectar os dados

corporativos?

preocupações

Page 57: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Azure Mobile Apps

Antes, Azure Mobile Services>

Sincronização de dados

offline para criar

aplicativos dinâmicos

Conexões Híbridas e

VPN para conectar

aplicativos aos dados

locais

Notificações

personalizadas por push

Dimensionamento

automático interno de

acordo com as

necessidades dos

aplicativos

Page 58: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Backend para aplicações móveis

“.NET ou Node.js”;>

Conectar-se a recursos

locais como SAP, Oracle

e SQL Server e

SharePoint

Autenticação e

Autorização com

integrado ao Active

Directory

SSO utilizando conta

Microsoft ou de redes

sociais(Twitter, Facebook, Google)

Conectar-se a

aplicações SaaS

(Sales Force, Office 365)

Page 59: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Data & Synchronizing Data

Sincronização baseada

em nuvem para criar

aplicativos que

funcionam off-line

Sincronização entre

múltiplos dispositivos

Armazenamento de

dados em SQL,

Armazenamento de

Tabela e MongoDB

Capacidade Cross

platforma

Page 60: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

A melhor experiência para usuários aliada a qualidade e produtividade para nossos time

de desenvolvimento

Page 61: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

qualquer plataforma e qualquer tipo de aplicativo.

Page 62: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

Dúvidas?

Page 63: Aplicativos Corporativos Cross Plataform com Xamarin & Azure Mobile Apps

[email protected]

Muito Obrigado!

>