nativo vs. cross-plataform: caminhos e alternativas
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/1.jpg)
Nativo vs. Cross-Platform Caminhos e Alternativas
@SuelenGC
![Page 2: Nativo vs. Cross-Plataform: Caminhos e Alternativas](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/2.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/3.jpg)
Quando pensamos em
desenvolvimento mobile,
temos que considerar pelo
menos 2 plataformas.
![Page 4: Nativo vs. Cross-Plataform: Caminhos e Alternativas](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/4.jpg)
![Page 5: Nativo vs. Cross-Plataform: Caminhos e Alternativas](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/5.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/6.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/7.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/8.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/9.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/10.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/11.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/12.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/13.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/14.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/15.jpg)
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](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/16.jpg)
Dúvidas?
@SuelenGC | www.suelengc.com.br
![Page 17: Nativo vs. Cross-Plataform: Caminhos e Alternativas](https://reader034.vdocuments.mx/reader034/viewer/2022052323/559369041a28ab8a2d8b477e/html5/thumbnails/17.jpg)
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