Post on 16-Jul-2015
www.xpand-it.com
Proprietary & Confidential
Como otimizar o desenvolvimento multiplataforma?
Xamarin
Dinis Vieira | Xamarin Evangelist & Microsoft Consultant dinis.vieira@xpand-it.com
2015 © Copyright Xpand IT www.xpand-it.com
AGENDA
• Xamarin
– Vantagens
– Arquitectura
– Xamarin.Forms
• Ferramentas / Integrações
• Xamarin Insights
www.xpand-it.com
Proprietary & Confidential
Vantagens, Arquitetura e Xamarin.Forms
Xamarin
2015 © Copyright Xpand IT www.xpand-it.com
Anatomia de uma Aplicação Nativa
User Interface Nativa
Acesso à API Nativa
Performance Nativa
Aplicações construídas com os
controlos de user interface
nativos para uma interação
mais simples e familiar.
As aplicações tem acesso a toda
a funcionalidade exposta pela
plataforma.
Podem utilizar a aceleração de
hardware nativa e são
compiladas como binários
nativos aos invés de ser
interpretadas durante a
execução.
2015 © Copyright Xpand IT www.xpand-it.com
API Nativa (e User Interface)
O Xamarin expõe 100% das APIs nativas para iOS,
Android e Windows
2015 © Copyright Xpand IT www.xpand-it.com
Suporte APIs Nativas
Suporte no mesmo dia: iOS 5, iOS 6, iOS 7, iOS 7.1, iOS 8
Suporte completo de: • Google Glass
• Android Wear
• Amazon Fire TV
• Outros…
2015 © Copyright Xpand IT www.xpand-it.com
Performance Nativa
O Xamarin.iOS utiliza a compilação Ahead Of
Time (AOT) para produzir um binário ARM
para a Apple App Store.
O Xamarin.Android utiliza a compilação
Just In Time (JIT) no próprio dispositivo
Android.
2015 © Copyright Xpand IT www.xpand-it.com
Abordagem Nativa (abordagem “silo”)
Design/UI
Business
Logic
Data &
Services
Testing & QA 15%
35%
35%
15%
iOS
100%
Dev. re
sourc
es
15%
35%
35%
15%
Android
100%
Dev. re
sourc
es
15%
35%
35%
15%
Windows
100%
Dev. re
sourc
es
2015 © Copyright Xpand IT www.xpand-it.com
Abordagem XPlat Xamarin
Design/UI
Business
Logic
Data &
Services
Testing & QA 15%
35%
35%
15%
iOS
100%
Dev. re
sourc
es
15%
0% (Shared)
0% (Shared)
15%
Android
30%
Dev. re
sourc
es
15%
0% Shared
0% Shared
15%
Windows
30%
Dev. re
sourc
es
2015 © Copyright Xpand IT www.xpand-it.com
Vantagem C# (com Xamarin)
C# with Xamarin
2015 © Copyright Xpand IT www.xpand-it.com
Arquitectura Xamarin
iOS C# UI Android C# UI Windows C# UI
Shared App Logic Shared App Logic
Xamarin.Forms
Tradicional Xamarin.Forms
2015 © Copyright Xpand IT www.xpand-it.com
Xamarin.Forms
Com apenas uma API é possível gerar
interfaces específicas para cada
plataforma.
As várias páginas “Xamarin.Forms” são mapeadas
para elementos de user interface nativos
específicos de cada plataforma.
2015 © Copyright Xpand IT www.xpand-it.com
Xamarin.Forms
O Xamarin.Forms é extensível:
Podem-se estender controlos já existentes para customizar o seu comportamento.
É possível definir novos controlos, layouts, páginas, células, …
2015 © Copyright Xpand IT www.xpand-it.com
Xamarin.Forms
Decisão de utilização Ecrã-a-ecrã Xamarin.Forms é uma opção ótima
para formulários. É possível misturar
Xamarin.Forms com Xamarin.iOS e
Xamarin.Android na mesma aplicação
de forma a ter um controlo total
sobre o look and feel.
Embed Custom Views em qualquer lado
Não só é possível misturar páginas
Xamarin.Forms com ecrãs costumizados,
como é também possível ter páginas
“normais” com controlos de
Xamarin.Forms e controlos “normais”
em páginas de Xamarin.Forms.
Invocação da API da plataforma via serviços partilhados Caso seja necessário funcionalidades
especificas da plataforma numa página
Xamarin.Forms (como por exemplo invocar o
acelerómetro) é possível utilizar serviços que
abstraem a API especifica de cada
plataforma.
www.xpand-it.com
Proprietary & Confidential
Ferramentas / Integrações
2015 © Copyright Xpand IT www.xpand-it.com
async
PCL &
Shared
Projects
2015 © Copyright Xpand IT www.xpand-it.com
Integração Visual Studio
Integração Visual Studio 2013
Uma única solution para
desenvolvimento iOS,
Android e Windows.
Permite utilizar todo o
ecossistema Microsoft:
ReSharper
Team Foundation Server (TFS)
NuGet
Outras ferramentas
Visual Designers para iOS e
Android
2015 © Copyright Xpand IT www.xpand-it.com
Xamarin Component Store
Aumento Produtividade e
Time-to-Market mais curto Mais de 200 componentes, desde
Salesforce, Azure e SAP a
componentes de digitalização de
códigos de barra.
Bastam algumas linhas de código
para adicionar os vários
componentes em projectos
Xamarin no Visual Studio ou
Xamarin Studio.
E não esquecer que também se pode
utilizar o NuGet.
www.xpand-it.com
Proprietary & Confidential
Monitorização em tempo real
Xamarin Insights
2015 © Copyright Xpand IT www.xpand-it.com
Xamarin Insights
Permite mais facilmente priorizar a lista de
bugs a corrigir dependendo do impacto que
tem no utilizador.
Saber exatamente quantos utilizadores
estão a ser afetados por um determinado
bug/crash
Saber qual a sequencia de ações que
levaram ao bug/crash
Monitorização em tempo real
2015 © Copyright Xpand IT www.xpand-it.com
Xamarin Insights
Saber:
• Quem está online
• Quais as passos que levaram ao problema
• Quais os problemas que estão a ocorrer
• De onde é o utilizador
• Que dispositivo estava a ser usado
Permite comunicar mais eficazmente sobre
problemas, atualizações e correções.
Monitorização em tempo real
2015 © Copyright Xpand IT www.xpand-it.com
Conclusão
• Xamarin
• Vantagens
• Arquitectura
• Xamarin.Forms
• Ferramentas / Integrações
• Xamarin Insights
2015 © Copyright Xpand IT www.xpand-it.com
Office Address
Parque das Nações,
Edifício Mar do Oriente
Alameda dos Oceanos, Lote 1.07.1Y - Fração 2.3
1990-203 Lisbon, Portugal
Contactos
XPAGILE SDC
Rua Camilo Castelo Branco,
Nº 643, R/C Esq.
4900-437 Viana do Castelo, Portugal
mail@xpand-it.com
T: (+351) 21 896 71 50
F: (+351) 21 896 71 51
facebook.com/Xpand-IT
@xpandit
linkedin.com/company/Xpand-it