Buscar

Desenvolvimento Multiplataforma para Aplicativos

Prévia do material em texto

INTRODUÇÃO AO DESENVOLVIMENTO MULTIPLATAFORMA
AULA 1
AGENDA
Introdução
Aplicações Híbridas
O Cordova e o Phonegap
Entendendo Aplicativo Nativo e Aplicativo Híbrido
INTRODUÇÃO
Com passar dos anos, o desenvolvimento de aplicativos mobile está crescendo consideravelmente.
Esse aumento é devido ao crescente aumento nas vendas de smartphones e os investimentos que as grandes empresas estão realizando nesse setor.
Essa notícia também é importante para o mercado de trabalho na área de desenvolvimento de aplicativos móveis, que vem oferecendo cada vez mais, oportunidades para os desenvolvedores independentes.
INTRODUÇÃO
GRÁFICO COM O CRESCIMENTO DE DISPOSITIVOS MOBILE
INTRODUÇÃO
PORCENTAGEM DE CONSUMIDORES USANDO DISPOSITIVOS MOBILE
INTRODUÇÃO
No entanto, se formos analisar de uma forma mais abrangente, construir aplicativos móveis requer uma decisão muito importante, que é:
Qual plataforma escolher para começar o desenvolvimento da aplicação?
INTRODUÇÃO
Atualmente existem diversas plataformas de desenvolvimento para o ambiente mobile, são elas:
ANDROID
Para desenvolver aplicativos nativos para essa plataforma é necessário que o desenvolvedor possua experiência na linguagem Java e o Android SDK, para auxiliar no desenvolvimento das aplicações.
INTRODUÇÃO
IOS
Desenvolvida e mantida pela Apple. 
Para desenvolver aplicativos nativos para essa plataforma o desenvolvedor precisa de uma experiência com as linguagens Objective-C ou Swift e com o ambiente de desenvolvimento do Xcode, para auxiliar na construção das aplicações.
INTRODUÇÃO
Windows Phone
Desenvolvida e mantida pela Microsoft
Para desenvolver aplicativos nativos para essa plataforma é necessário conhecimento na linguagem C# e do ambiente de desenvolvimento do windows e visual studio, para auxiliar na implementação das aplicações.
INTRODUÇÃO
É importante destacar que existem outras plataformas no mercado, como a Blackberry, o Firefox OS e o Ubuntu, mas possuem uma faixa bem menor do mercado de aplicações mobile. 
Outra coisa que é necessário enfatizar, é que cada plataforma possui a sua suite de desenvolvimento, onde estão integradas as linguagens e ferramentas de implementação.
INTRODUÇÃO
MARKET SHARE (SISTEMAS OPERACIONAIS)
INTRODUÇÃO
INTRODUÇÃO
	Period	Android	iOS	Windows Phone	BlackBerry OS	Others
	2015Q2	82.8%	13.9%	2.6%	0.3%	0.4%
	2014Q2	84.8%	11.6%	2.5%	0.5%	0.7%
	2013Q2	79.8%	12.9%	3.4%	2.8%	1.2%
	2012Q2	69.3%	16.6%	3.1%	4.9%	6.1%
APLICAÇÕES HÍBRIDAS
Para o desenvolvimento de um aplicativo móvel nativo nos dias de hoje é necessário um conhecimento em várias linguagens de programação e ferramentas de desenvolvimento. 
Aplicativo móvel nativo?
As aplicações Nativas, são as desenvolvidas diretamente para uma determinada plataforma, em uma linguagem específica, como: Android (utilizando Java), iOS(com ObjectiveC) ou Windows Phone (C#).
APLICAÇÕES HÍBRIDAS
Questionamentos no momento de desenvolver um Aplicativo:
se não tivermos uma equipe de desenvolvimento multidiciplinar?
se quisermos construir o aplicativo para todas as plataformas, será necessário desenvolver um aplicativo para cada uma delas?
É nesse momento que entra a ideia de aplicações híbridas.
Aplicações Híbridas
Com as aplicações híbridas é possível criar aplicativos multiplataformas.
Existem vários frameworks que auxiliam no desenvolvimento de aplicações híbridas:
Corodova/Phonegap
Xamarim
Aplicações Híbridas
Cordova/Phonegap
Com o Cordova/Phonegap é possível criar aplicativos com a linguagem HTML 5/ CSS e Javascript e torná-lo nativo de qualquer plataforma citada anteriormente. 
Xamarim
Com o Xamarim o desenvolvimento se dá a partir da linguagem C#, mas o aplicativo também se torna nativo em qualquer plataforma.
Aplicações Híbridas
Cordova/Phonegap
O Cordova/Phonegap é um framework open-source de desenvolvimento móvel, que encapsula o código escrito em HTML 5/ CSS e Javascript em uma casca nativa que executa um navegador e a partir de uma API javascript tem acesso aos recursos nativos do dispositivo. 
Essa janela de navegador nativo que irá executar o código HTML é chamado de WebView. Uma WebView pode ser facilmente criada pelos códigos nativos Android, iOS e Windows Phone como um componente.
Aplicações Híbridas
Esse tipo de aplicativo é chamado de híbrido, por ser desenvolvido em linguagem Web e compilado para qualquer plataforma.
É importante destacar que o papel mais importante no momento da compilação do aplicativo, é do Phonegap/Cordova, pois a aplicação executa sobre a WebView do dispositivo e o acesso aos recursos nativos está limitado ao poder da API. 
Para alguns sistemas como Android e iOS a API consegue acessar quase todos os recursos nativos, mas para outros como Windows Phone e Symbian o acesso ainda é limitado.
TABELA DE PLUGINS CORDOVA
O CORDOVA E O PHONEGAP
CORDOVA VS PHONEGAP
O framework Cordova e o Phonegap são essencialmente a mesma coisa. 
Basicamente, o Phonegap é uma distribuição proprietária do Cordova.
O CORDOVA E O PHONEGAP
HISTÓRIA
Em 2009 a empresa Nitobi criou o Phonegap
Para tentar melhorar e facilitar o desenvolvimento de aplicações mobile
Um framework open source que utiliza padrões web para criar aplicações móveis. 
Com ele é possível desenvolver um aplicativo utilizando os padrões web e, depois de finalizado, compilar o código para a plataforma mobile de preferência.
O CORDOVA E O PHONEGAP
HISTÓRIA
Com tudo isso, o Phonegap passou a ser apenas uma distribuição do projeto Apache Cordova. 
E o principal produto referente ao Phonegap passou a ser o Adobe build, o Adobe Phonegap Desktop e o Adobe App Developer que abordaremos nas próximas aulas.
Entendendo Aplicativo Nativo e Aplicativo Híbrido
Começaremos esse tópico com um questionamento:
É melhor criar aplicativos nativos, ou híbrido com Cordova?
Entendendo Aplicativo Nativo e Aplicativo Híbrido
Resposta:
Depende do aplicativo que se deseja desenvolver. 
Por exemplo, um aplicativo híbrido bem construído se integra a plataforma da mesma forma de um nativo. 
Então do ponto de vista do seu usuário não possui muita diferença. No entanto, algumas coisas devem ser observadas e uma delas é a performance.
Entendendo Aplicativo Nativo e Aplicativo Híbrido
Se o aplicativo realmente exigir bastante processamento do dispositivo, como:
 Jogos 3D, aplicações que precisem de multithreading, aplicativos que executem serviços em background 
Nesses casos é importante escrever todo o código em linguagem e ferramentas nativas para cada plataforma. 
Entretanto, boa parte dos aplicativos não se encaixa nessas categorias, então híbrido é o suficiente.
Entendendo Aplicativo Nativo e Aplicativo Híbrido
Outra coisa que precisamos medir quando formos construir um aplicativo é o custo de desenvolvimento. 
Com Cordova, um único código serve todas as plataformas e não é necessário ter equipes específicas desenvolvendo com a linguagem Java no Android, a linguagem Objective-C ou Swift no iOS e C# no Windows Phone.
Entendendo Aplicativo Nativo e Aplicativo Híbrido
Mas se você estiver em uma empresa grande e possuir recursos de ter uma equipe de desenvolvimento para cada plataforma, com certeza é melhor manter dessa forma. 
Pois a API do Cordova, nos dá acesso a muitos recursos nativos, no entanto, a API nativa é que possui todas as possibilidades a disposição.
Entendendo Aplicativo Nativo e Aplicativo Híbrido
Então antes de começar a implementar, é importante planejar e decidir qual será o aplicativo criado e se ele realmente irá utilizar muito processamento do dispositivo ou recursos nativos exclusivos de cada plataforma, porque assim, é melhor desenvolver em linguagem nativa. 
No entanto, se o aplicativo não for usar essas características e você quiser disponibilizá-lo para todas as plataformas de forma rápida e barata é melhor utilizar o Phonegap/Cordova.
PRÓXIMA AULA
Introdução ao HTML
Introdução ao CSS

Continue navegando