O documento discute princípios básicos e boas práticas para desenvolvimento de aplicativos móveis para iOS, incluindo a importância de otimizar processos e evitar consumo excessivo de recursos, além de adaptar a interface e experiência do usuário para telas móveis.
5. ● Google Play
● Maior número de usuários
● Baixo custo para começar a
desenvolver
● Velocidade para publicação e
atualização
● Linguagem conhecida da
grande maioria
● App Store
● Rigoroso padrão de
aprovação
● Pequeno número de devices
para dar suporte
● Usuários acostumados a
pagar pelos aplicativos
● Devices sempre atualizados
com a última versão de S.O.
Prós
6. ● Infinidade de modelos para
suportar.
● Falta de rigor para aprovação
dos aplicativos.
● Várias versões de S.O. para
suportar.
● Tempo de publicação.
● Curva de aprendizagem.
● Alto investimento.
Contras
8. ● Aplicações devem ser leves
● Processos e operações devem ser otimizados
(mais do que em qualquer outro tipo de
plataforma)
● Evitar serviços que acabem por consumir muita
bateria
o GPS
o Requests em serviços de forma contínua
o Chamadas constantes ao banco de dados
12. ● Simplificado (esqueça procedures ou triggers)
● Operações básicas (SELECT / INSERT / UPDATE /
DELETE)
● Tipos simples (TEXT, INTEGER, REAL, BLOB,
NULL)
● Utilizar de sincronização com a web
Evitar replicar todo o banco do servidor central na app
Referência: https://sqlite.org/
14. ● Evitar o travamento da tela
● Realizar processos assíncronos (fora da thread
principal)
● Inserir "spinner" para indicar o carregamento
(loading…)
● Tratar diferentes tamanhos de celular e versões dos
sistemas operacionais
20. ● Devemos pensar na área de
alcance dos botões
● O usuário pode ter mãos
pequenas ou grandes, isso
interfere totalmente na
performance de uso da
aplicação
● Quais os tamanhos de tela
devemos contemplar?
Referência: http://www.lukew.com/ff/entry.asp?1927
27. Versionamento
● Para o desenvolvimento em equipes é necessário o uso de
versionamento (GIT ou SVN)
● Possibilidade da divisão do trabalho
● Cuidado especial com componentes de interface (xml gerados
podem ocasionar conflitos irreversíveis)
● Cuidado com configurações de projeto (mesmo funcionamento de
componentes na UI)