resumo geral sobre sdk desenvolvimento

14
SmartMail| Entidade Promotora: Parceiros: 1/2 Projeto em curso com o apoio de: 09/04/2014 Investigação sobre SDKs de desenvolvimento móvel

Upload: ricardo-raminhos

Post on 09-Dec-2015

27 views

Category:

Documents


1 download

DESCRIPTION

Com cada vez mais plataformas de entretenimento ou trabalho no mercado, a dificuldade de criar aplicações para todas elas tem aumentado. Como resposta têm surgido kits de desenvolvimento com o objetivo de facilitar o desenvolvimento de aplicações para múltiplas plataformas simultaneamente, diminuindo o esforço necessário do lado dos developers. A possibilidade de expandir e agilizar o desenvolvimento do SMART Mail desta forma levou a esta investigação, concretamente ao estudo dos dois SDK’s PhoneGap e Appcelerator Titanium. Ambos oferecem a possibilidade de reduzir o custo de desenvolvimento para múltiplas plataformas e vão ser analisados com o intuito de conhecer as suas capacidades.

TRANSCRIPT

Page 1: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

1/2 Projeto em curso com o apoio de:

09/04/2014

Investigação sobre SDKs de desenvolvimento móvel

Page 2: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Índice Introdução .......................................................................................................................................................... 1

PhoneGap ........................................................................................................................................................... 1

Appcelerator ....................................................................................................................................................... 7

References ........................................................................................................................................................ 13

Introdução Com cada vez mais plataformas de entretenimento ou trabalho no mercado, a dificuldade de criar

aplicações para todas elas tem aumentado. Como resposta têm surgido kits de desenvolvimento com o

objetivo de facilitar o desenvolvimento de aplicações para múltiplas plataformas simultaneamente,

diminuindo o esforço necessário do lado dos developers. A possibilidade de expandir e agilizar o

desenvolvimento do SMART Mail desta forma levou a esta investigação, concretamente ao estudo dos dois

SDK’s PhoneGap e Appcelerator Titanium. Ambos oferecem a possibilidade de reduzir o custo de

desenvolvimento para múltiplas plataformas e vão ser analisados com o intuito de conhecer as suas

capacidades.

PhoneGap O PhoneGap (PhoneGap Homepage, s.d.) é um SDK open source desenhado para criar mobile apps

multiplataforma com web technologies. São apresentados como se corressem nativamente apesar de

serem efetivamente webapps. No entanto, apps feitos com este devkit conseguem utilizar plugins que dão

acesso a funções nativas. (Winkler, s.d.) O PhoneGap foi criado a partir do Apache Cordova quando este foi

doado à Apache Software Foundation em Outubro de 2011. As duas versões existem simultaneamente

agora, não existindo uma diferença significativa entre eles atualmente, ambas sendo open source. No

entanto, independentemente de quaisquer alterações que o Cordova sofra no futuro, o Phonegap

continuará a ser open source. O PhoneGap utiliza exclusivamente HTML, CSS e Javascript e a sua biblioteca

é continuamente expandida pelos seus utilizadores graças a ser open source. Adicionalmente, este SDK tem

acesso a bibliotecas adicionais que expandem mais ainda os seus limites. Devido à utilização de HTML5,

Javascript e CSS no PhoneGap, bibliotecas que também utilizem estas linguagens podem complementar o

SDK. Por exemplo, utilizando as bibliotecas Flot (Flot Homepage, s.d.), jqPlot (jqPlot Homepage, s.d.) ou D3

(D3 Homepage, s.d.) é possível apresentar gráficos para visualização e exploração de dados. A Figura 1 e a

Figura 2 mostram um layout interativo criado com D3 para plataformas móveis. Pressionar num dos nós do

gráfico de linhas altera o pie chart adjacente para refletir os dados relativos ao ano do nó selecionado.

(Building Interactive Mobile Dashboards with D3 and other Charting Libraries, s.d.) Já existem milhares de

apps criados até hoje com o PhoneGap tal como o Completure e o NUS extra Student Discount Companion

App.

Page 3: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

O NUS extra Student Discount Companion App (NUS extra, s.d.) é uma aplicação que complementa os

serviços disponibilizados pela NUS, ou National Union of Students. Detentores do cartão de estudante da

NUS podem aceder ao website principal para obter informação geral sobre o todos os temas relacionados

com a vida de estudante e ainda juntar cupões virtuais que lhes interessem. Ao passar para o mobile app,

os estudantes podem ver a localização dos locais mais próximos onde os cupões acumulados são aplicáveis

e onde os melhores descontos podem ser encontrados, podendo contar com a ajuda de filtros, alertas e

listas personalizadas para acelerar a pesquisa dos melhores negócios. A Figura 3 contém um exemplo onde

está destacada uma promoção na McDonald’s a um quilómetro de distância.

O Completure (Completure Homepage, s.d.) tem como objetivo descentralizar as notícias ao dar a qualquer

pessoa a capacidade de registar e partilhar fotografias e informação. Um utilizador pode criar uma pequena

reportagem com fotografias, adicionar informação relevante, incluir marcadores geográficos ou

cronológicos e publicar. As reportagens depois podem ser avaliadas por outros utilizadores. Caso prefira

conhecer as notícias em vez de as criar, um utilizador pode também procurar eventos importantes por

região e pela classificação dada por outros utilizadores, exemplificado na Figura 4, com a possibilidade de

os guardar ou partilhar, como a Figura 5 mostra. Permite que um utilizador conheça uma área para onde se

esteja a dirigir, potencialmente evitando uma estrada bloqueada por um engarrafamento.

Figura 1 - D3 Interactive Mobile Dashboard 1994

Page 4: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 2 - D3 Interactive Mobile Dashboard 2010

Page 5: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 3 - NUS extra app Map

Page 6: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 4 - Completure Newsfeed

Page 7: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 5 - Completure Share

Page 8: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Appcelerator A Appcelerator (Appcelerator Homepage, s.d.) é uma empresa de tecnologias mobile que criou e

disponibilizou o Titanium, um SDK open source cujo propósito é fornecer uma série de ferramentas

adaptadas para iOS ou Android. A escrita do código é feita em Javascript e posteriormente complementada

pelo Titanium API que interpreta o código Javascript no momento de execução, dando também acesso às

funcionalidades nativas. Isto significa que é possível criar aplicações para tanto iOS e Android sem ter de

aprender a programar para cada sistema operativo individualmente. Tal como com o PhoneGap, o Titanium

também tem acesso a bibliotecas de criação de gráficos. A própria biblioteca D3 também é compatível com

este SDK mas não é a única. As bibliotecas gRaphaël (gRaphaël Homepage, s.d.) e Highcharts (Highcharts

Homepage, s.d.) utilizam Javascript e HTML5 para criar gráficos, estáticos ou interativos, para qualquer

plataforma moderna. A Figura 6 mostra um gráfico de barras em iPhone e Android, respetivamente à

esquerda e à direita. A Figura 7 tem dados financeiros, incluindo um line chart, também em iPhone e

Android. Os gráficos de ambas estas figuras foram feitas com a biblioteca Highcharts no ambiente Titanium

e podem ser consultados no blog da Appcelerator. (Interactive Charts in Appcelerator Titanium, s.d.)

Um exemplo de uma aplicação original criada com o Titanium é o ParkYa. (ParkYa Homepage, s.d.) O

ParkYa é uma aplicação desenhada para facilitar o estacionamento de automóveis. A aplicação mostra

onde existem lugares de estacionamento, quantos espaços estão disponíveis e o pagamento necessário em

cada uma. Em caso de ser necessário pagar, a aplicação também permite pagar diretamente pelo

smartphone. Também fornece as indicações para chegar ao lugar pretendido, tanto com um mapa como

com instruções passo a passo. Ao lado das funcionalidades centrais, são também oferecidas soluções

adicionais. A aplicação pode ser adaptada para uso individual ou para grupos de pessoas. Também facilita o

processamento de carros mal estacionados, permitindo introduzir matrículas de automóveis e avisar as

autoridades. Da Figura 8 até à Figura 11 podemos ver o progresso do utilizador, começando por ver uma

lista de parques de estacionamento próximos, o parque de Cathedral Street realçado na Figura 9, mais

detalhes revelados na Figura 10 e, por fim, a escolha de quanto tempo ele deseja estacionar o carro e o

preço associado a esse tempo.

Page 9: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 6 - Titanium Highcharts Bar Chart iPhone and Android

Figura 7 - Titanium Highcharts Stock Chart iPhone and Android

Page 10: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 8 - ParkYa List

Page 11: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 9 - ParkYa Details 1

Page 12: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 10 - ParkYa Details 2

Page 13: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

Figura 11 - ParkYa Payment

Page 14: Resumo Geral sobre SDK Desenvolvimento

SmartMail| Entidade Promotora: Parceiros:

2/2 Projeto em curso com o apoio de:

References Appcelerator Homepage. (s.d.). Obtido de Appcelerator: http://www.appcelerator.com/

Autographics. (s.d.). Obtido de Google Play:

https://play.google.com/store/apps/details?id=com.abhishek.autographics

Building Interactive Mobile Dashboards with D3 and other Charting Libraries. (s.d.). Obtido de Christophe

Coenraets: http://coenraets.org/blog/2014/02/interactive-mobile-dashboard-d3-charts/

Completure Homepage. (s.d.). Obtido de Completure: http://completure.com/

D3 Homepage. (s.d.). Obtido de Data-Driven Documents: http://d3js.org/

Flot Homepage. (s.d.). Obtido de Flot: http://www.flotcharts.org/

gRaphaël Homepage. (s.d.). Obtido de gRaphaël: http://g.raphaeljs.com/

Highcharts Homepage. (s.d.). Obtido de Highcharts: http://www.highcharts.com/

Interactive Charts in Appcelerator Titanium. (s.d.). Obtido de Appcelerator:

http://www.appcelerator.com/blog/2013/09/interactive-charts-in-appcelerator-titanium/

jqPlot Homepage. (s.d.). Obtido de jqPlot: http://www.jqplot.com/

NUS extra. (s.d.). Obtido de Code Computerlove: http://www.codecomputerlove.com/work/nus/

ParkYa Homepage. (s.d.). Obtido de ParkYa: http://parkya.com/

PhoneGap Homepage. (s.d.). Obtido de PhoneGap: http://phonegap.com/

Winkler, G. (s.d.). Can You Make a Native App Using Phonegap? Obtido de Interrupted:

http://blog.guillermowinkler.com/blog/2013/02/10/can-you-make-a-native-app-using-phonegap/