Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2

9,602 views
9,450 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
9,602
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
218
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2

  1. 1. Módulo I - Introdução Aula 2Carlos Eugênio Torres Faculdade ChristusEngenheiro de Informática Sistemas de Informaçãohttp://cetorres.com 17/09/2010
  2. 2.  Graduado em Ciência da Computação pela UFC, Brasil (2004); Graduado em Engenharia Informática e de Computadores pelo IST, Portugal (2005); Mais de 10 anos de experiência com desenvolvimento móvel, inclusive internacional, na Vodafone Telecom, Portugal; MBA em Gestão de Projetos pela FGV, Brasil (em andamento); Fundador da Cacira Tecnologia, empresa especializada em soluções para as plataformas web e móvel (http://cacira.com.br).
  3. 3.  Módulo I - Introdução  Dia 03/09 ▪ Conceito de Mobilidade; ▪ História da computação móvel; ▪ Utilidade das aplicações móveis; ▪ Desafios; ▪ Necessidades do mercado;  Dia 17/09 ▪ Características técnicas dos dispositivos móveis; ▪ Principais plataformas de desenvolvimento; ▪ Plataformas mais indicadas para cada solução; ▪ Aplicações móveis e a internet;  Dia 24/09 ▪ Prática: Montagem de um ambiente de programação em uma plataforma de desenvolvimento móvel;  Dia 01/10 ▪ Prática: Desenvolvimento de um mini-projeto de aplicação móvel.
  4. 4.  Quando pensamos em desenvolver para dispositivos móveis, temos que ter em mente suas principais características técnicas para nos ajudar a direcionar o desenvolvimento. Em termos de smartphones, as principais são: tamanho e resolução da tela, capacidade de memória e processamento, métodos de entrada de dados e conectividade.
  5. 5.  TAMANHO E RESOLUÇÃO DA TELA  O dispositivos móveis atuais têm cada vez mais vindo com telas grandes e com alta resolução.  O iPhone 4, por exemplo, tem um display de 3,5 polegadas com uma resolução de espantosos 960x640 pixels.  Mas nem todos os dispositivos tem as capacidades e temos que desenvolver pensando em vários tamanhos e resoluções
  6. 6.  TAMANHO E RESOLUÇÃO DA TELA  Nossa aplicação móvel deve estar preparada para se adaptar automaticamente ou devem ser feitas versões diferentes para cada tamanho específico.Blackberry Bold 9000 Apple iPhone 4 Android Nexus One Motorola Milestone Symbol MC50 HTC s710 2,6 pol. 3,5 pol. 3,7 pol 3,7 pol 3,0 pol 2,4 pol 480 x 320 640 x 960 480 x 800 480 x 854 240 x 320 240 x 320
  7. 7.  MEMÓRIA E PROCESSAMENTO  Nossa aplicação móvel deve preocupar-se com a capacidade de memória e processamento do dispositivo em que irá ser executada. Geralmente essa capacidade é limitada e devemos construir um código na programação bastante leve e eficiente, que não sobrecarregue os recursos do dispositivo e possa, ao mesmo tempo, tirar o máximo de proveito do equipamento.
  8. 8.  MEMÓRIA E PROCESSAMENTO  As principais configurações encontradas atualmente no mercado para essa característica:Processador Memória RAM Memória ROM Armazenamento~ 350 Mhz 256 MB 512 MB Externo <= 4 GB~ 500 Mhz 512 MB 512 MB Exerno <= 16 GB~ 1 Ghz 512 MB 512 MB Interno / Externo <= 32 GB
  9. 9.  MÉTODOS DE ENTRADA DE DADOS  São as formas com que o usuário irá entrar com dados nos dispositivos para alimentar a nossa aplicação.  Podem ser: teclado (virtual ou físico), câmera, microfone, sensores de aceleração, luminosidade e proximidade, tela sensível ao toque, botões de acesso e cabos de dados.
  10. 10.  MÉTODOS DE ENTRADA DE DADOS  Quando estamos projetando nossa aplicação, temos que planejar que métodos de entrada iremos utilizar para obter dados do usuário.  Para cada método, existem funções nas frameworks de desenvolvimento diferentes para se poder acessar a entrada do usuário. Seja a API da câmera, dos sensores, o interpretador de voz através do microfone, os botões etc.
  11. 11.  CONECTIVIDADE  As formas de comunicação e conexão com o mundo exterior ao dispositivo móvel hoje em dia é a principal característica a se analisar.  As formas mais freqüentes atualmente são: ▪ GSM (telefonia móvel) ▪ Redes sem fio (WiFi) ▪ Dados móveis (3G, Edge, GPRS) ▪ Bluetooth ▪ GPS e a-GPS ▪ USB (cabo de dados)
  12. 12.  CONECTIVIDADE  Ao se desenvolver uma aplicação móvel, deve-se saber de que formas ela irá se comunicar com o meio externo para realizar trocas de arquivos, atualizações de banco de dados locais e remotos, solicitações de informações a serviços online.  A partir daí, a programação irá utilizar a API correta para cada tipo de conexão, realizando a comunicação com sucesso.
  13. 13.  Atualmente, as plataformas ou frameworks mais utilizadas no desenvolvimento de aplicações móveis são:  Oracle Java ME;  Microsoft Windows Mobile;  Google Android;  Apple iOS;  Nokia Symbian OS;  Palm WebOS;  Outras plataformas proprietárias.
  14. 14.  Oracle Java ME  Linguagem: Java;  Bastante difundida dentre os celulares para jogos e aplicações de utilidades;  A Java Micro Edition divide-se em: ▪ CLDC: Connected Limited Devices Configuration ▪ MIDP: Mobile Information Device Profile ▪ CDC: Connected Devices Configuration  IDE: Eclipse e Netbeans  SDK: ▪ http://www.oracle.com/technetwork/java/javame/overview/index.html
  15. 15.  Oracle Java ME - Arquitetura
  16. 16.  Microsoft Windows Mobile  Linguagem: ▪ .NET Compact Framework C# e VB.NET;  Bastante difundida dentre as aplicações corporativas pela sua produtividade e integração com outros produtos Microsoft;  Pequena curva de aprendizagem para quem já conhece .NET Framework;  IDE: Visual Studio .NET  SDK: ▪ http://msdn.microsoft.com/en-us/netframework/aa497273.aspx
  17. 17.  Microsoft .NET Compact Framework - Arquitetura
  18. 18.  Google Android  Linguagem: Java, Web;  Criada pela Google para smartphones;  Muitas funcionalidades na API;  Possui loja de venda de aplicações. Desenvolvedor paga anuidade para vender na loja;  Pequena curva de aprendizagem para quem já conhece Java;  IDE: Eclipse  SDK: ▪ http://developer.android.com/sdk/index.html
  19. 19.  Google Android - Arquitetura
  20. 20.  Apple iOS  Linguagem: Objective-C, Web;  Exclusivo para iPhone, iPod Touch e iPad;  Muitas funcionalidades na API, mas a aplicação fica presa numa “sandbox” quando instalada;  Possui loja de venda de aplicações. Desenvolvedor paga anuidade para vender na loja;  Grande curva de aprendizado na linguagem Objective-C, por ser pouco difundida;  IDE: Xcode (apenas Mac OS X);  SDK: ▪ http://developer.apple.com/devcenter/ios/index.action
  21. 21.  Apple iOS - Arquitetura
  22. 22.  Nokia Symbian OS  Linguagem: C++, Qt, Web;  Principalmente encontrado em smartphones Nokia;  Curva de aprendizado média na linguagem C++ com uso de Qt (plataforma para criação de UI) ;  IDE: Fornecida pela fabricante;  SDK: ▪ https://developer-secure.symbian.org/main/tools_and_kits/index.php
  23. 23.  Nokia Symbian OS - Arquitetura
  24. 24.  Palm WebOS  Linguagem: Web, C++;  Somente encontrado em smartphones Palm;  Rápido e bonito, mas com poucos usuários e aplicações até o momento;  Destaque para desenvolvimento em plataforma Web encorajado pelo próprio SDK;  IDE: Eclipse;  SDK: ▪ http://developer.palm.com/index.php?option=com_content&view=article&layo ut=page&id=1788
  25. 25.  Palm WebOS - Arquitetura
  26. 26.  Cada solução móvel exige uma análise detalhada de todos os requisitos que devem ser implementados na aplicação; De acordo com o objetivo principal da solução, um dispositivo móvel e uma plataforma são indicados como os melhores, que contém as melhores funcionalidades, facilidade e produtividade necessárias para alcançar o objetivo com eficiência e eficácia.
  27. 27.  Case 1: Aplicação móvel para o Censo 2010 do IBGE  Irá exigir uso diário e contínuo durante grande número de horas;  Uso externo, sujeito ao tempo, poeira, quedas;  Boa capacidade de memória;  Recursos de comunicação móvel, 3G e Edge;  Recursos de GPS para localização global;  Grande número de dispositivos em operação;  Sincronização com sistema central;  Facilidade de instalação e manutenção;  Capacidade de produtividade no desenvolvimento.
  28. 28.  Case 2: Aplicação para gestão móvel de ERP  Será utilizado apenas pelos executivos da empresa;  Exige visual arrojado e fácil usabilidade;  Comunicação móvel, 3G, WiFi;  Sincronização apenas sem fio;  Poucos dispositivos em operação;  Reconhecimento de voz para autenticação;
  29. 29.  Case 1: Aplicação móvel para o Censo 2010 do IBGE – Solução  Dispositivo indicado: Coletor Symbol MC50  Plataforma: Windows Mobile .NET Compact Framework
  30. 30.  Case 2: Aplicação para gestão móvel de ERP - Solução  Dispositivo indicado: iPhone 4  Plataforma: Apple iOS
  31. 31.  Umas das formas de comunicação que podem ser usadas pelas aplicações móveis é através da internet; Utiliza meios de ligações sem fio como 3G, Edge, GPRS ou WiFi; Solicita e envia informações a serviços web, e-mail IMAP, RSS feeds, API remotas a fim de buscar integração com variados sistemas online.
  32. 32.  Todas as plataformas disponibilizam API para comunicação com os protocolos disponíveis na internet; Integrações mais comuns:  Redes sociais (Twitter, Facebook etc);  RSS feeds e blogs;  Mapas online;  Meteorologia  Notícias (economia, esportes, política etc).
  33. 33.  Exemplo
  34. 34. Próxima aulaMontagem de ambiente da plataforma Google Android
  35. 35. FIMdúvidas?

×