Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

9,977 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

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?

×