nativo vs. cross-plataform: caminhos e alternativas

17
Nativo vs. Cross-Platform Caminhos e Alternativas @SuelenGC

Upload: suelen-goularte-carvalho

Post on 01-Jul-2015

1.584 views

Category:

Documents


10 download

DESCRIPTION

Apresentação realizada na trilha de short talks de 15 minutos no QCon SP 2013. Resumo: Uma questão em pauta por desenvolvedores mobile e empresários é se devem desenvolver seus aplicativos móveis com a tecnologia nativa ou usar uma cross-platform, em que, em teoria, desenvolve-se uma vez e roda em vários dispositivos. Nessa palestra são analisadas de forma pragmática as vantagens e desvantagens de cada abordagem.

TRANSCRIPT

Page 1: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Nativo vs. Cross-Platform Caminhos e Alternativas

@SuelenGC

Page 2: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Obrigada!

@SuelenGC | www.suelengc.com.br

Arquiteta de Software no MapLink

Instrutora na Caelum

Suelen Goularte Carvalho

Page 3: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Quando pensamos em

desenvolvimento mobile,

temos que considerar pelo

menos 2 plataformas.

Page 4: Nativo vs. Cross-Plataform: Caminhos e Alternativas
Page 5: Nativo vs. Cross-Plataform: Caminhos e Alternativas

IDC: Android, Windows Phone see robust growth, iOS plateaus, BlackBerry and others flailing

IDC - Top Smartphones Operating Systems,

Shipments and Market Share

Page 6: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Device APIs

010110101010100

101010100010001

001001001111010

101110100011110

101010110101000

10001000101...

Aplicação Nativa

Nativo

Browser Mobile

<html>

<body>

</body>

</html>

Código Web

Device APIs

Híbrido

Container Nativo

<html>

<body>

</body>

</html>

Código Web

Web

Cross-Plataform

Basicamente, temos 3 formas de

desenvolver app’s mobile

Page 7: Nativo vs. Cross-Plataform: Caminhos e Alternativas

The obvious route is to build a native

app for each device.

Martin Fowler, QConSP 2012

Page 8: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Nativo Aplicativos nativos são desenvolvidos para uma plataforma específica.

O desenvolvimento é feito utilizando linguagem, SDK e IDE de cada

plataforma.

xCode

+

ObjectiveC

Eclipse

+

Java

Visual Studio

+

C#

Page 9: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Padrões de UI e UX

Instalação pelas App Store’s

Acesso a recursos avançados

Ferramentas de testes

SDK facilita no desenvolvimento

Vantagens

Melhor usabilidade!

Page 10: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Tempo e esforço para lançar em todas as

plataformas

Conhecimento específico

Muitos projetos para manter

Atualização depende das App Store’s e do

usuário

Custo!

Desvantagens

Page 11: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Cross-Plataform Aplicativo cross-plataform podem ser instalados em mais de uma

plataforma com pouco ou nenhum esforço. Basicamente são divididos

em híbridos e webapp’s.

Existem muitas ferramentas para o desenvolvimento e podem ser

usadas diversas linguagens, sendo muito comuns as web.

Page 12: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Por atender várias plataformas mobiles diferentes

Fácil disponibilizar novas funcionalidades

Não é necessário passar por Apple/Play Store ou ter que

esperar o usuário baixar uma versão nova

Não precisa se submeter a nenhuma regra específica das

app store’s

Vantagens

Page 13: Nativo vs. Cross-Plataform: Caminhos e Alternativas

A UX do aplicativo não terá o tom característico do

dispositivo.

Testar aplicativos cross-platform pode ser considerado

mais complicado, uma vez que diferentes

Pode ser mais difícil ou até mesmo impossível trabalhar

offline

Plataformas possuem diferentes comportamentos e bugs

Desvantagens

Page 14: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Funcionalidade Nativo Híbrido Web

Linguagem de desenvolvimento Apenas nativo Nativo e web ou

apenas web Web apenas

Portabilidade - Alto Alto

Acesso a recursos específicos do

device (acelerômetro, GPS, câmera) Alto Médio Baixo

Conhecimento prévio Baixo Alto Alto

Gráficos avançados Alto Médio Médio

Flexibilidade de deploy Baixo (depende

da app store)

Baixo

(normalmente

pela appstore)

Alto

Experiências de instalação Alto (pela

appstore)

Alto (pela

appstore)

Baixo (acesso

pelo browser)

Em resumo...

Page 15: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Conclusão:

Hoje temos diversas opções e

ferramentas, para todos os

bolsos e objetivos.

Pense sobre eles e

escolha o seu!

Page 16: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Dúvidas?

@SuelenGC | www.suelengc.com.br

Page 17: Nativo vs. Cross-Plataform: Caminhos e Alternativas

Referências:

Aplicações Mobile: Web ou Nativa?

http://blog.caelum.com.br/aplicacoes-mobile-web-ou-nativa/

Facebook for iOS goes native, waves goodbye to HTML 5

http://www.theverge.com/2012/8/23/3262782/facebook-for-ios-native-app

The FT web app

http://labs.ft.com/articles/the-ft-web-app/

Wikipidia - Cross-Pataform

http://en.wikipedia.org/wiki/Cross-platform#Challenges_to_cross-platform_development

Mobile applications: native v Web apps – what are the pros and cons?

http://mobithinking.com/native-or-web-app

Which Cross Platform Mobile Development Platform Should You Choose? (+)

http://simpleprogrammer.com/2013/07/01/cross-platform-mobile-development/

Benefits and Disadvantages of Developing Cross-Platform Mobile Apps (+)

http://socialmediatoday.com/node/1613271

Wikipidia - Mobile application development

http://en.wikipedia.org/wiki/Mobile_application_development#Mobile_application_testing

IDC: Android, Windows Phone see robust growth, iOS plateaus, BlackBerry and others flailing

http://www.phonearena.com/news/IDC-Android-Windows-Phone-see-robust-growth-iOS-plateaus-

BlackBerry-and-others-flailing_id46161