SlideShare ist ein Scribd-Unternehmen logo
1 von 53
Downloaden Sie, um offline zu lesen
Boas práticas para
desenvolvimento
Mobile
Marcelo Quinta

domingo, 15 de dezembro de 13
7 anos com Mobile
Medicina

Eventos

Guia Diversão
Animação digital

M-commerce Fotografia
Publicidade PDV
Sertanejo
domingo, 15 de dezembro de 13
Isso é um computador
Processador

Conexão com internet

Teclado

Placa gráfica

Memória

Memória secundária

Tem aplicações

domingo, 15 de dezembro de 13

Sistema operacional
Isso não é um
computador
Processador

Conexão com internet

Teclado

Placa gráfica

Memória

Memória secundária

Tem aplicações

domingo, 15 de dezembro de 13

Sistema operacional
domingo, 15 de dezembro de 13
domingo, 15 de dezembro de 13
domingo, 15 de dezembro de 13
Restrições de sistema
• Conexões só na thread secundária
• Você não pode acessar tudo
• Existem processos que podem ter mais
prioridade

• A conexão é ruim
• Você precisa da permissão
• Diferentes suporte a mídias
domingo, 15 de dezembro de 13
Tempo de resposta
domingo, 15 de dezembro de 13
Diferentes plataformas

Diferentes designs
domingo, 15 de dezembro de 13
domingo, 15 de dezembro de 13
Aqui é diferente
•

“Meu aplicativo vai fazer o computador desligar
rapidinho”

•

“Meu aplicativo só roda em um certo tipo de
PC”

•

“Meu sistema web sempre deve seguir as regras
da W3C, senão não vão deixar publicar”

•
•

“E se o usuário rodar o monitor?”
“Roda em PC. E quando eu abrir no notebook?”

domingo, 15 de dezembro de 13
Mesma plataforma

Diferentes designs
domingo, 15 de dezembro de 13
Os componentes de
interface são diferentes

domingo, 15 de dezembro de 13
Emulador?

domingo, 15 de dezembro de 13
3G é TIM
É o pior cenário possível

domingo, 15 de dezembro de 13
Threads e assincronia

domingo, 15 de dezembro de 13
Ciclo de vida

domingo, 15 de dezembro de 13
Reuso
Moço,bora
tomar uma
cerveja!

Design
Início difícil
domingo, 15 de dezembro de 13

Velocidade

Atualização
Antigamente tinha...

http://www.theultimateandroidlibrary.com/

domingo, 15 de dezembro de 13
Onde encontrar

http://www.openintents.org/en/libraries

domingo, 15 de dezembro de 13
Onde encontrar

http://www.androidviews.net

domingo, 15 de dezembro de 13
Bibliotecas do Google

domingo, 15 de dezembro de 13
Bibliotecas do Google
Mapas

Calendar

Youtube

Game Service

Google Play

Latitude

Google Drive
...

Translate
...

https://code.google.com/apis/console/

domingo, 15 de dezembro de 13
ACTIONBAR PARA VERSÕES
ANTIGAS

Ou procure o projeto AppCompat

domingo, 15 de dezembro de 13
Collapsible Search Menu

https://github.com/johnkil/Android-CollapsibleSearchMenu
domingo, 15 de dezembro de 13
Android Form Validator

https://github.com/throrin19/Android-Validator
domingo, 15 de dezembro de 13
PullToRefresh

https://github.com/throrin19/Android-Validator
domingo, 15 de dezembro de 13
ViewPager

http://viewpagerindicator.com/

domingo, 15 de dezembro de 13
Android Annotations

http://androidannotations.org/

domingo, 15 de dezembro de 13
Joda Time

http://joda-time.sourceforge.net/

domingo, 15 de dezembro de 13
SlidingMenu

https://github.com/jfeinstein10/SlidingMenu

domingo, 15 de dezembro de 13
Android Asset Studio

http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html

domingo, 15 de dezembro de 13
GSON

https://code.google.com/p/google-gson/

domingo, 15 de dezembro de 13
Esqueci alguma?
ORMLite
Android jQuery

Volley
Aquery

domingo, 15 de dezembro de 13
E para iOS?

Texto

domingo, 15 de dezembro de 13
Onde encontrar

http://www.github.com
domingo, 15 de dezembro de 13
Onde encontrar

https://www.cocoacontrols.com/
domingo, 15 de dezembro de 13
Onde encontrar

http://www.raywenderlich.com/
domingo, 15 de dezembro de 13
JBAsyncImageView

https://github.com/bunchjesse/JBAsyncImageView

domingo, 15 de dezembro de 13
GPUImage

https://github.com/BradLarson/GPUImage

domingo, 15 de dezembro de 13
SDURLCache

https://github.com/steipete/SDURLCache

domingo, 15 de dezembro de 13
MBProgressHUD

https://github.com/jdg/MBProgressHUD
domingo, 15 de dezembro de 13
JASidePanels

https://github.com/gotosleep/JASidePanels
domingo, 15 de dezembro de 13
RestKit

http://restkit.org/

domingo, 15 de dezembro de 13
JSONKit

https://github.com/johnezang/JSONKit

domingo, 15 de dezembro de 13
SJNotificationViewController

https://github.com/scottjacksonx/SJNotificationViewController

domingo, 15 de dezembro de 13
Esqueci alguma?
CorePlot

iRate

iVersion

domingo, 15 de dezembro de 13
Cuidado
A compatibilidade não é para todas as versões;
Muitos bugs
Que tal um fork?
Algumas gambiarras que seu código vai ter que herdar
Funciona em tudo?

domingo, 15 de dezembro de 13
Desenvolvimento híbrido?
domingo, 15 de dezembro de 13
HTML5 vai matar
aplicações nativas
Monetização
Personalização
domingo, 15 de dezembro de 13

Distribuição
Sensores
PENSE MÓVEL
(PRIMEIRO)

domingo, 15 de dezembro de 13
FIM
domingo, 15 de dezembro de 13

Weitere ähnliche Inhalte

Ähnlich wie Boas práticas desenvolvimento Mobile

5 Motivos para usar o Google App Engine
5 Motivos para usar o Google App Engine5 Motivos para usar o Google App Engine
5 Motivos para usar o Google App EngineJean Donato
 
Android DevConference - Gerenciando a publicação e atualização de 450 apps se...
Android DevConference - Gerenciando a publicação e atualização de 450 apps se...Android DevConference - Gerenciando a publicação e atualização de 450 apps se...
Android DevConference - Gerenciando a publicação e atualização de 450 apps se...iMasters
 
De idealista à empreendedor - como desenvolver aplicações em android que conq...
De idealista à empreendedor - como desenvolver aplicações em android que conq...De idealista à empreendedor - como desenvolver aplicações em android que conq...
De idealista à empreendedor - como desenvolver aplicações em android que conq...Ramon Ribeiro Rabello
 
Web Analytics - Introducao
Web Analytics - IntroducaoWeb Analytics - Introducao
Web Analytics - IntroducaoMateada
 
10 Coisas sobre WebDevelopment
10  Coisas sobre WebDevelopment10  Coisas sobre WebDevelopment
10 Coisas sobre WebDevelopmentNando Sousa
 
Cloudretail - Analytics e Métricas para um mundo mobile
Cloudretail - Analytics e Métricas para um mundo mobileCloudretail - Analytics e Métricas para um mundo mobile
Cloudretail - Analytics e Métricas para um mundo mobileVictor Lima
 
Workshop on Android Rom Creation - FISTA/ISCTE 2014
Workshop on Android Rom Creation - FISTA/ISCTE 2014Workshop on Android Rom Creation - FISTA/ISCTE 2014
Workshop on Android Rom Creation - FISTA/ISCTE 2014Flávio Moringa
 
DemoDay - Bootcamp Primaveira Dec/2013
DemoDay - Bootcamp Primaveira Dec/2013DemoDay - Bootcamp Primaveira Dec/2013
DemoDay - Bootcamp Primaveira Dec/2013Germinadora
 
Cultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develCultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develJose Augusto Carvalho
 
Facilitando a Colaboração com GitHub - SFDSSA2012
Facilitando a Colaboração com GitHub - SFDSSA2012Facilitando a Colaboração com GitHub - SFDSSA2012
Facilitando a Colaboração com GitHub - SFDSSA2012Cleverson Sacramento
 
Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012Horácio Soares
 
UX Design em 7 Passos - Daniel Werle, Fórum Web Adventista
UX Design em 7 Passos - Daniel Werle, Fórum Web AdventistaUX Design em 7 Passos - Daniel Werle, Fórum Web Adventista
UX Design em 7 Passos - Daniel Werle, Fórum Web AdventistaIgreja Adventista do Sétimo Dia
 
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012Mauro George
 
Internet das Coisas e o Futuro da Internet
Internet das Coisas e o Futuro da InternetInternet das Coisas e o Futuro da Internet
Internet das Coisas e o Futuro da InternetAndre Peres
 

Ähnlich wie Boas práticas desenvolvimento Mobile (19)

5 Motivos para usar o Google App Engine
5 Motivos para usar o Google App Engine5 Motivos para usar o Google App Engine
5 Motivos para usar o Google App Engine
 
Android DevConference - Gerenciando a publicação e atualização de 450 apps se...
Android DevConference - Gerenciando a publicação e atualização de 450 apps se...Android DevConference - Gerenciando a publicação e atualização de 450 apps se...
Android DevConference - Gerenciando a publicação e atualização de 450 apps se...
 
De idealista à empreendedor - como desenvolver aplicações em android que conq...
De idealista à empreendedor - como desenvolver aplicações em android que conq...De idealista à empreendedor - como desenvolver aplicações em android que conq...
De idealista à empreendedor - como desenvolver aplicações em android que conq...
 
Web Analytics - Introducao
Web Analytics - IntroducaoWeb Analytics - Introducao
Web Analytics - Introducao
 
10 Coisas sobre WebDevelopment
10  Coisas sobre WebDevelopment10  Coisas sobre WebDevelopment
10 Coisas sobre WebDevelopment
 
Cloudretail - Analytics e Métricas para um mundo mobile
Cloudretail - Analytics e Métricas para um mundo mobileCloudretail - Analytics e Métricas para um mundo mobile
Cloudretail - Analytics e Métricas para um mundo mobile
 
Workshop on Android Rom Creation - FISTA/ISCTE 2014
Workshop on Android Rom Creation - FISTA/ISCTE 2014Workshop on Android Rom Creation - FISTA/ISCTE 2014
Workshop on Android Rom Creation - FISTA/ISCTE 2014
 
Tcc
TccTcc
Tcc
 
DemoDay - Bootcamp Primaveira Dec/2013
DemoDay - Bootcamp Primaveira Dec/2013DemoDay - Bootcamp Primaveira Dec/2013
DemoDay - Bootcamp Primaveira Dec/2013
 
Cultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e develCultura DevOps e integração entre infra e devel
Cultura DevOps e integração entre infra e devel
 
Android - Além do HelloWord
Android - Além do HelloWordAndroid - Além do HelloWord
Android - Além do HelloWord
 
Aula android 01.pdf
Aula android 01.pdfAula android 01.pdf
Aula android 01.pdf
 
Facilitando a Colaboração com GitHub - SFDSSA2012
Facilitando a Colaboração com GitHub - SFDSSA2012Facilitando a Colaboração com GitHub - SFDSSA2012
Facilitando a Colaboração com GitHub - SFDSSA2012
 
Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012
 
Justinmind Prototyper
Justinmind PrototyperJustinmind Prototyper
Justinmind Prototyper
 
UX Design em 7 Passos - Daniel Werle, Fórum Web Adventista
UX Design em 7 Passos - Daniel Werle, Fórum Web AdventistaUX Design em 7 Passos - Daniel Werle, Fórum Web Adventista
UX Design em 7 Passos - Daniel Werle, Fórum Web Adventista
 
Android libraries
Android librariesAndroid libraries
Android libraries
 
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
Git para iniciantes v1.3.0 @ PHP Conference Brasil 2012
 
Internet das Coisas e o Futuro da Internet
Internet das Coisas e o Futuro da InternetInternet das Coisas e o Futuro da Internet
Internet das Coisas e o Futuro da Internet
 

Mehr von Marcelo Quinta

O que há de novo nas Android Support Libraries
O que há de novo nas Android Support LibrariesO que há de novo nas Android Support Libraries
O que há de novo nas Android Support LibrariesMarcelo Quinta
 
Dicas de otimização e planejamento de apps para o mercado brasileiro
Dicas de otimização e planejamento de apps para o mercado brasileiroDicas de otimização e planejamento de apps para o mercado brasileiro
Dicas de otimização e planejamento de apps para o mercado brasileiroMarcelo Quinta
 
Bibliotecas Google para iOS: Fanboy é a sua vó
Bibliotecas Google para iOS: Fanboy é a sua vóBibliotecas Google para iOS: Fanboy é a sua vó
Bibliotecas Google para iOS: Fanboy é a sua vóMarcelo Quinta
 
Games and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some moneyGames and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some moneyMarcelo Quinta
 
iOS no TDC Florianópolis
iOS no TDC FlorianópolisiOS no TDC Florianópolis
iOS no TDC FlorianópolisMarcelo Quinta
 
Introdução ao Arduino e robótica
Introdução ao Arduino e robóticaIntrodução ao Arduino e robótica
Introdução ao Arduino e robóticaMarcelo Quinta
 

Mehr von Marcelo Quinta (13)

O que há de novo nas Android Support Libraries
O que há de novo nas Android Support LibrariesO que há de novo nas Android Support Libraries
O que há de novo nas Android Support Libraries
 
Dicas de otimização e planejamento de apps para o mercado brasileiro
Dicas de otimização e planejamento de apps para o mercado brasileiroDicas de otimização e planejamento de apps para o mercado brasileiro
Dicas de otimização e planejamento de apps para o mercado brasileiro
 
Bibliotecas Google para iOS: Fanboy é a sua vó
Bibliotecas Google para iOS: Fanboy é a sua vóBibliotecas Google para iOS: Fanboy é a sua vó
Bibliotecas Google para iOS: Fanboy é a sua vó
 
iOS libraries
iOS librariesiOS libraries
iOS libraries
 
Android bluetooth
Android bluetoothAndroid bluetooth
Android bluetooth
 
Mobile
MobileMobile
Mobile
 
Games and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some moneyGames and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some money
 
iOS no TDC Florianópolis
iOS no TDC FlorianópolisiOS no TDC Florianópolis
iOS no TDC Florianópolis
 
Jquery Mobile
Jquery MobileJquery Mobile
Jquery Mobile
 
Introdução ao Arduino e robótica
Introdução ao Arduino e robóticaIntrodução ao Arduino e robótica
Introdução ao Arduino e robótica
 
Ria e Java FX
Ria e Java FXRia e Java FX
Ria e Java FX
 
Minicurso Java Me
Minicurso Java MeMinicurso Java Me
Minicurso Java Me
 
Hello World JavaFX
Hello World JavaFXHello World JavaFX
Hello World JavaFX
 

Boas práticas desenvolvimento Mobile