2. Primeiro contato com Titanium Studio em Fev/2011
Primeiro app publicado em Ago/2012
Dois apps vendidos / desenvolvidos sob demanda
Um app "banido" do Google Play
Desenvolvimento e venda de módulos para o Titanium
Diversos projetos pessoais e laboratórios…
Arley Andrada Maria
Full Stack Developer
FUNDEP / UFMG
ArlSoft Tecnologia / 3 Turnos
Apresentação e Experiência
3. Titanium Studio
"Desenvolvimento de apps totalmente nativos, multi
plataforma, utilizando JavaScript"
Android - iOS - Windows Phone - Tizen
Blackberry - Mobile Web HTML5
Appcelerator Platform
Plataforma composta por IDE de desenvolvimento,
framework MVC integrada, API integrada com um serviço
de back-end completo, ferramentas para testes
automatizados, sistema de monitoramento e suporte.
Produtos
8. Hyperloop
Nova arquitetura do Titanium (mudanças significativas)
Mínimo impacto para migração
Aumento de performance
Redução do tamanho do app
Acesso completo e direto às APIs nativas
"Variação" da linguagem JavaScript com novo
compilador
Código-fonte aberto
http://www.appcelerator.com/blog/2014/12/introducing-hal
http://www.slideshare.net/connysvensson/hyperloop-35052105
https://github.com/appcelerator/hyperloop
9. Reforce seu conhecimento da linguagem JavaScript,
tanto para suas características de orientação a objetos
quanto para programação assíncrona, uso de callback
e processamento em uma única thread
Experiência com Node.JS
Modularização com CommonJS
Utilize a framework MVC nativa (Alloy) e lembre que terá
à disposição as bibliotecas Backbone,
Backbone.Events, Underscore, Moment, entre outras…
Dicas
10. Poder utilizar a mesma linguagem no desenvolvimento
do aplicativo e também no desenvolvimento das APIs e
do back-end (Node.JS) traz algumas facilidades
Estude, experimente e domine o funcionamento dos
sistemas de layout e flutuação para conseguir
desenvolver apps que possam se adaptar às diferentes
resoluções e com o mínimo de customizações por
plataforma
vertical, horizonta, composite
Ti.UI.FILL, Ti.UI.SIZE, auto
Dicas
11. Dicas
Acostume-se e faça uso sempre de desenvolvimento
baseado em eventos (por módulo, componente ou
globais) em pról de uma melhor experiência do usuário
Remova as inscrições de eventos não utilizados
Não tente fazer com que o app fique visualmente igual
em todas as plataformas. O ideal é tirar proveito e
manter as características de cada plataforma
Minimize o uso de imagens e dê preferência para os
elementos nativos
12. Dicas
Utilize padrões de "programação defensiva" pois o
volume de variáveis no desenvolvimento de apps é
muito alto e relativamente imprevisíveis
Se pode dar errado, vai dar errado!
Minimize o uso de recursos, minimize operações longas
e sempre mantenha um retorno visual para o usuário e
evite "bloquear" a "navegação" do usuário
Uso de eventos
Escolha correta de componentes
ListView x TableView
Carregar informações conforme a demanda
Boas práticas de desenvolvimento
16. Evite utilizar WebView para contornar dificuldades para o
desenvolvimento de uma interface
Se precisar armazenar dados símples, utilize as
"propriedades" (Ti.App.Properties) ao invés de salvar
em banco de dados
Sempre que possível teste seu aplicativo em um
dispositivo real
Para Android é mais rápido publicar para o dispositivo
do que para o emulador (mesmo com o
Genymotion)
Dicas
17. Dicas
Utilize log para "rastrear" a execução do código ao invés
de utilizar o modo de debugação
Utilize o recurso de Liveview para o desenvolvimento de
interfaces
Busque ajuda através da comunidade / fóruns da
Appcelerator que é muito ativa e moderada por
desenvolvedores reais e experientes
Não utilize para fazer propaganda
Mantenha o código organizado e legível