SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
INTRODUÇÃO -
Prof. Cloves Rocha
(cloves.rocha@faculdadeg
uararapes.edu.br)
pt.slideshare.net/ClovesRocha
EMENTA
Computação para Dispositivos Móveis
 Examina o projeto e implementação de
sistemas computacionais onipresentes, ou seja,
aplicações móveis, acessíveis por meio de
quaisquer dispositivos computacionais e
integráveis com aplicações existentes;
 Além disso, enfatiza aspectos práticos, por
meio da utilização de ferramentas e linguagens
de programação para o desenvolvimento de
aplicações móveis.
INTRODUÇÃO
 A telefonia móvel, desde que foi criada em
1973 por Martin Cooper, trouxe diversos
benefícios para todo o mundo;
 A possibilidade de levar um aparelho celular
no bolso e fazer ligações em qualquer lugar, a
qualquer momento, foi uma inovação muito bem
aceita pelos consumidores;
 Sem dúvida, os aparelhos celulares hoje possuem um
papel fundamental na vida de muitos.
INTRODUÇÃO
 Desde sua criação, os aparelhos celulares
passaram por um processo de evolução constante;
 Diversos fabricantes do mundo todo investiram
tempo e recursos financeiros para criar novos
aparelhos, cada vez mais modernos e desejados
pelos consumidores.
INTRODUÇÃO
 Dentre os avanços obtidos destacam-se a
miniaturização dos aparelhos, melhor
qualidade dos sinais das operadoras (2G,
3G, 4G);
 Novas funcionalidades (câmera,
acelerômetro, GPS, bluetooth).
(QMEE, 2016)
BREVE HISTÓRICO (EM PARALELO) ...
INTRODUÇÃO
 A redução do preço dos
aparelhos celulares, tornando-
os mais acessíveis;
 Possibilitou a aquisição dos mesmos
por parte da população menos
favorecida financeiramente.
INTRODUÇÃO
INTRODUÇÃO
INTRODUÇÃO
 São diversos os fabricantes de aparelhos
celulares, dentre eles destacam-se a
Motorola, Nokia, LG, Samsung, Apple e
BlackBerry;
 Os fabricantes costumam adotar um SO
(Sistema Operacional) para seus aparelhos, em
alguns casos eles desenvolvem seus próprios
sistemas operacionais.
INTRODUÇÃO
 Os sistemas operacionais, também conhecidos
como plataformas, mais utilizados são o Android,
iOS, Windows Phone, BlackBerry OS e Symbian.
Cada SO possui características únicas que as
diferem das demais;
 Linguagens de programação e ferramentas de
desenvolvimento são os principais fatores que diferem
uma plataforma da outra.
CONCEITO
Sistemas Computacionais Móveis
são sistemas computacionais que
podem facilmente ser movidos
fisicamente ou cujas capacidades
podem ser utilizadas enquanto
eles estão sendo movidos.
CONCEITO
Devido a mobilidade, eles normalmente oferecem recursos
e características que não encontramos em sistemas comuns:
 Monitoramento do nível de energia e prevenção de perda de
dados em caso de pane de energia;
 Armazenamento de dados local e/ou remoto, através de conexão
com ou sem fio;
 Sincronização de dados com outros sistemas;
Atualmente, consideramos sistemas móveis os sistemas que
são desenvolvidos para rodar em palmtops, celulares,
tablets e similares.
BREVE HISTÓRICO ...
 Na visão dos Dispositivos Móveis a
computação móvel começou em
meados de 1992;
 Através do lançamento do handheld
chamado Newton Message PAD, pela
Apple.
BREVE HISTÓRICO ...
BREVE HISTÓRICO ...
Características do Newton
Tela sensível ao toque;
1 MB de memória total; e
Capacidade de transmissão de dados de
38.5kbps.
O modelo não emplacou. Ele era muito
grande, pesado e caro, mas é considerado
o início dos dispositivos móveis.
BREVE HISTÓRICO ...
 Em 1996, a U.S. Robotics (conhecida
fabricante de placas fax-modem) lançou o
(Palm) Pilot 1000 e 5000;
 Estes dispositivos tiveram grande aceitação no
mercado e lançaram as bases de toda uma
plataforma de “Palms” que chegaram a atingir
80% do mercado mundial e existem até hoje;
 U.S. Robotics foi adquirida pela 3Com que
desmembrou a empresa Palm Inc. (empresa voltado ao
mercado de PDAs).
BREVE HISTÓRICO ...
BREVE HISTÓRICO ...
 Também em 1996, começaram a surgir dispositivos com
o Windows CE 1.0, da Microsoft, como o NEC MobilePro
200 e o Casio A-10;
 Até o lançamento do Windows CE 3.0 e da plataforma
Pocket PC, em 2000, a plataforma Windows CE não teve
grande aceitação do mercado;
 Mas a partir do Sistema Operacional Pocket PC 2000,
embutido em dispositivos como o HP Jornada e o Compaq
Ipaq, esta plataforma ganhou aceitação do mercado e
começou a crescer.
BREVE HISTÓRICO ...
BREVE HISTÓRICO ...
 A empresa Symbiam foi
formada em 1998 por alguns
dos maiores fabricantes de
celulares do mundo (Nokia) e a
PSION;
 Umas das grandes contribuições
desta empresa foi um sistema
operacional móvel e plataforma
de computação denominado
Symbiam OS, projetado para
smartphones e handhelds, sob
conduta da Nokia.
BREVE HISTÓRICO ...
 O primeiro conceito de um computador no estilo Tablet foi
criado na década de 60 e início da de 70 por Alan Kay e
chamava-se DynaBook;
 Curiosamente, Alan Kay lançou sua ideia no artigo “A Personal
Computer for Children of All Ages”, onde visava o
comportamento de crianças na utilização e na educação
através de um computador de mão;
 O artigo inspirou mais tarde Steve Jobs e Bill Gates a criarem
novas ideias e produtos voltados a computação móvel;
 Os tablets como conhecemos hoje só vieram a aparecer em
1998 e 2001, com o primeiro tablet colorido, o Fujitsu Stylistic
2300.
BREVE HISTÓRICO ...
BREVE HISTÓRICO (EM PARALELO) ...
 Paralelo ao desenvolvimento
dos dispositivos móveis também
avançava a telefonia móvel;
 Em 1973 a Motorola criou o
primeiro telefone realmente
móvel e portátil, Motorola
DynaTAC 8000X;
 Surge a 1ª Geração de
celulares analógicos.
BREVE HISTÓRICO (EM PARALELO) ...
 Em 1990 surgiu a 2ª Geração, a 2G, já com tecnologia de
rede digital;
 A rede GSM veio logo em seguida, lançada na Finlândia;
 Melhorou a transmissão de voz, barateou o custo e massificou
a utilização de celulares no mundo;
 Em 2001 apareceu no Japão a rede 3G. Esta rede é digital,
de alta velocidade proporcionando melhor transmissão de
dados em conjunto com voz e a tão sonhada vídeo-chamada
tornou-se realidade;
 Em meados de 2009, surgiu a rede 4G com a promessa de
velocidade de transmissão 10 vezes superior à 3G.
DESAFIOS DA MOBILIDADE
Vamos ver alguns desafios e barreiras que precisam ser
transpostos para viabilizar certas soluções deste tipo.
 Custo de hardware. Para certas aplicações, são demandados certos
dispositivos que têm um custo ainda relativamente elevado;
 Baixo poder de processamento. Como os dispositivos móveis tem
reserva de energia limitada, para garantir uma autonomia de uso
razoável, a saída é cortar em poder de processamento das CPUs.
DESAFIOS DA MOBILIDADE
 Pouca infraestrutura de comunicação. A rede de comunicação de
dados existente (WI-FI, GSM/GPRS ou EDGE, etc.) ainda não está
confiável suficientemente para certos tipos de aplicações;
 Mão-de-obra insuficiente. Ainda há uma cultura na área de TI de
que desenvolver para dispositivos móveis é a mesma coisa de
desenvolver para desktop. São parecidos, mas não iguais;
 Interoperabilidade. A comunicação de sistemas móveis com sistemas
já existentes nas empresas é um grande desafio, principalmente
porque tais sistemas não foram construídos para este tipo de
interação.
AS PRINCIPAIS LINGUAGENS DE
PROGRAMAÇÃO USADAS EM
DESENVOLVIMENTO MOBILE
Java (Java ME)
 Adquirida pela Oracle, é a linguagem mais
utilizada por programadores ao redor do mundo.
Orientado a objetos, o Java é compilado e
flexível, podendo ser executada tanto numa
janela de navegador quanto em aparelhos sem
browser.
 Outra grande vantagem da linguagem Java é a
capacidade multiplataforma, cujo código é executado
com especial sucesso em sistemas Android e Windows.
AS PRINCIPAIS LINGUAGENS DE
PROGRAMAÇÃO USADAS EM
DESENVOLVIMENTO MOBILE
C
 Desenvolvida nos anos 1970, pode-se dizer que a
linguagem C é como o latim para a maioria dos idiomas
ocidentais: uma língua-mãe. Dela se originaram Java, C#
e praticamente todas as outras. Contudo, assim como o
latim, é complexa e exige de você muitas linhas para
cumprir tarefas que outras linguagens fazem em apenas
uma;
Também é compilado, e ideal para sistemas com muitos cálculos ou
para jogos com gráficos espetaculares. Se você tiver tempo e
criatividade, pode ser uma escolha interessante.
AS PRINCIPAIS LINGUAGENS DE
PROGRAMAÇÃO USADAS EM
DESENVOLVIMENTO MOBILE
C++
 Derivada diretamente da linguagem C, essa linguagem é uma das mais
populares e utilizadas pelo comércio devido ao fácil manuseio e
pluralidade de plataformas. Você pode criar aplicativos simples para
uma infinidade de funções. Mas não é só isso. Para se ter uma ideia, a
C++ foi usada como base para o desenvolvimento de softwares
grandiosos como Photoshop, Illustrator, Firefox e Microsoft Office.
Python
 Esse sim parece nome de alguma civilização dos planetas inventados por
George Lucas e Gene Roddenberry. No entanto, o nome é oriundo do grupo
de comediantes ingleses Monty Python. É uma linguagem com sintaxe clara e
didática, excelente particularmente se você for um iniciante.
No entanto, é uma linguagem robusta, uma vez que permite ao
programador resultados sofisticados apesar da simplicidade. Está presente
em web apps megapopulares como Instagram e Pinterest, por meio do
framework Django, além de Yahoo! e Google.
AS PRINCIPAIS LINGUAGENS DE
PROGRAMAÇÃO USADAS EM
DESENVOLVIMENTO MOBILE
Objective-C
Também conhecida como Obj-C, essa linguagem foi utilizada pela Apple
enquanto a C++ era a moda. Também foi desenvolvida a partir da
linguagem Smalltalk, não obstante com mais foco em funções gráficas e
de exibição. É a base original dos aplicativos feitos para iOS e Mac OS
X e orientada a objeto. Está em processo de substituição pela Swift.
Swift
É a nova linguagem desenvolvida pela Apple. Não há opção melhor se o
seu objetivo é focar em aparelhos iOS. Recentemente, a marca inventada
por Steve Jobs anunciou que a Swift será transformada em código
aberto. A medida busca aumentar o número de programadores e
transformá-la na linguagem mais popular para desenvolvimento de
softwares e aplicativos mobile.
AS PRINCIPAIS LINGUAGENS DE
PROGRAMAÇÃO USADAS EM
DESENVOLVIMENTO MOBILE
C#
 Assim como o Obj-C está para a Apple, o
C# está para a Microsoft;
 Todavia. Logo, se pretende desenvolver
aplicativos que englobem o sistema mais
popular do mundo é melhor incluir a linguagem
C# na sua lista.
LINGUAGENS CROSS-PLATAFORMA
LINGUAGENS CROSS-PLATAFORMA
 Cross-Plataforma (cross-platform) de
desenvolvimento mobile é uma técnica para
desenvolver uma única base de código para os
aplicativos que venham a ser utilizados em
diferentes sistemas operacionais.
 Os principais sistemas operacionais, tais como telefone
Android e iOS são estruturalmente diferentes em sua
arquitetura.
LINGUAGENS CROSS-PLATAFORMA
LINGUAGENS CROSS-PLATAFORMA
MoSync
 É uma ferramenta avançada para o desenvolvimento de
aplicações multi-plataforma. O kit de desenvolvimento
padrão inclui bibliotecas para tecnologias comuns
utilizadas para moldar o futuro da web. MoSync é em
grande parte compatível com o Eclipse e suporta C / C
++, PHP, Python, Ruby, JavaScript e Java.
 A melhor coisa sobre o MoSync é que você consegue
importar aplicativos nativos sem muito esforço, aplicativos
nativos como Symbian, Windows Mobile, Linux Mobile,
Android, iOS e plataformas iPad.
LINGUAGENS CROSS-PLATAFORMA
Whoop
Tem uma interface que permite aos desenvolvedores WYSYWIG
arrastar e soltar elementos dos aplicativos e ajustar o código da
barra de tarefas. Ele funciona bem com Windows Mobile, Symbian
Blackberry, Android, iPhone, e outros grandes sistemas operacionais
mobile. Ele é gratuito, com alguns pacotes pagos disponíveis.
Appcelerator (Titanium)
Utiliza a recursos web para permitir a compatibilidade entre
plataformas. Os aplicativos nativos são derivados de tecnologias
como HTML5, CSS3, JavaScript, PHP, Python e Ruby. Esta plataforma
é realmente eficiente, e dá aos usuários acesso a mais de 300 API.
LINGUAGENS CROSS-PLATAFORMA
Rhomobile
É uma ferramenta integrada desenvolvida em Ruby, e é usado para fazer
aplicações que funcionam em várias plataformas mobiles. Ele permite que
aplicativos nativos possam ser criado para Windows Mobile, Symbian, Android,
iOS e RIM. Isso deriva da compatibilidade acentuada nos recursos avançados de
dispositivos móveis. RhoHub, é um ambiente de código nuvem de hospedagem
enquanto RhoSync é um on-the-fly servidor independente, o que aumenta a
riqueza da experiência do desenvolvedor. Ambos RhoSync e RhoHub tornam o
desenvolvimento mobile mais prático e livre de problemas.
PhoneGap
Esta plataforma de desenvolvimento premiada é capaz de lidar com aplicativos
para Android, Symbian, Palm, Blackberry, iPhone e iPads. Ele é baseado em
tecnologias tais como JavaScript, HTML e CSS3. PhoneGap é muito eficiente e dá
ao desenvolvedor acesso fácil aos componentes de hardware avançados, como o
acelerômetro e GPS Tracker. Além disso, a equipe PhoneGap dá treinamento
gratuito para desenvolvedores. Há uma ativa comunidade de desenvolvedores
que está constantemente estudando as características pertinentes da linguagem.
LINGUAGENS CROSS-PLATAFORMA
Adobe Air
 Desenvolvido pela renomada Adobe, o Adobe Air utiliza extensões
AIR (Adobe Integrated Runtime) para poder acessar recursos
específicos nativos dos sistemas operacionais.
 Pode ser usado para as principais plataformas do mercado. É uma
ferramenta que fornece um bom nível de experiência de usuário,
quando comparado com outros concorrentes. Está disponível no site
da Adobe para download.
LINGUAGENS CROSS-PLATAFORMA
Ionic
 Focado em performance, design e otimizações, essa
ferramenta visa ao máximo se aproximar das aplicações
nativas.
 Entre as tecnologias utilizadas no Ionic, encontramos o
AngularJS, TypeScript, HTML5 e o JavaScript.
LINGUAGENS CROSS-PLATAFORMA
Xamarin
 Finalmente, Xamarin é uma plataforma C# onde o código é escrito
em geral, para iOS e Android e compilados de forma diferente
durante a implantação. Xamarin possuí vários recursos. Antes de
compilar, Xamarin executa o código em um framework .NET em tempo
de execução e oferece interface nativa para qualquer iOS ou
Android.
 Para as grandes equipes que trabalham em diferentes partes de um
mesmo projeto, podemos indicar este como versátil e adaptável.
LINGUAGENS CROSS-PLATAFORMA
React Native
Diversas companhias, assim como o Facebook, apostaram no React
Native para o desenvolvimento de suas aplicações. Alguns aplicativos
de sucesso que utilizam são:
 Facebook – mais de 1 bilhão de instalações
 Instagram – mais de 1 bilhão de instalações
 Airbnb – mais de 10 milhões de instalações
 Walmart – mais de 10 milhões de instalações
O framework possui diversas funcionalidades que auxiliam tanto no
desenvolvimento, quanto na manutenção de uma aplicação em
produção. Abaixo estão exemplificadas algumas delas:
DÚVIDAS ?
Aulas disponíveis em:
pt.slideshare.net/ClovesRocha
REFERÊNCIAS
Xamarin Forms - Desenvolvimento de aplicações
móveis multiplataforma - Everton Coimbra de
Araújo.

Más contenido relacionado

La actualidad más candente

Arquitetura de dispositivos móveis
Arquitetura de dispositivos móveis Arquitetura de dispositivos móveis
Arquitetura de dispositivos móveis
Italo Andrade
 

La actualidad más candente (20)

Aula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvelAula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvel
 
Desenvolvimento de aplicações para dispositivos móveis
Desenvolvimento de aplicações para dispositivos móveisDesenvolvimento de aplicações para dispositivos móveis
Desenvolvimento de aplicações para dispositivos móveis
 
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
 
Dispositivos móveis: Conceito, história e mercado
Dispositivos móveis: Conceito, história e mercadoDispositivos móveis: Conceito, história e mercado
Dispositivos móveis: Conceito, história e mercado
 
Aula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveisAula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveis
 
Arquitetura de dispositivos móveis
Arquitetura de dispositivos móveis Arquitetura de dispositivos móveis
Arquitetura de dispositivos móveis
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Desenvolvimento Mobile: Híbrido x Nativo
Desenvolvimento Mobile: Híbrido x NativoDesenvolvimento Mobile: Híbrido x Nativo
Desenvolvimento Mobile: Híbrido x Nativo
 
SISTEMAS OPERACIONAIS MÓVEIS (S.O)
SISTEMAS OPERACIONAIS MÓVEIS (S.O)SISTEMAS OPERACIONAIS MÓVEIS (S.O)
SISTEMAS OPERACIONAIS MÓVEIS (S.O)
 
Aula: Evolução da computação móvel
Aula: Evolução da computação móvelAula: Evolução da computação móvel
Aula: Evolução da computação móvel
 
Aula 05 - Como funciona o Computador
Aula 05 - Como funciona o ComputadorAula 05 - Como funciona o Computador
Aula 05 - Como funciona o Computador
 
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 
Aula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de DadosAula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de Dados
 
Informatica basica
Informatica basicaInformatica basica
Informatica basica
 
Introducao a informatica
Introducao a informaticaIntroducao a informatica
Introducao a informatica
 
Internet das Coisas: Conceitos e Aplicações
Internet das Coisas: Conceitos e AplicaçõesInternet das Coisas: Conceitos e Aplicações
Internet das Coisas: Conceitos e Aplicações
 
Aula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveisAula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveis
 
Internet das Coisas - Conectando você e tudo ao seu redor
Internet das Coisas - Conectando você e tudo ao seu redorInternet das Coisas - Conectando você e tudo ao seu redor
Internet das Coisas - Conectando você e tudo ao seu redor
 

Similar a Aula 1 - Introdução ao Mobile

Sistemas operacionais mobile
Sistemas operacionais mobileSistemas operacionais mobile
Sistemas operacionais mobile
Daniel Brandão
 
Arquitetura de Celulares
Arquitetura de CelularesArquitetura de Celulares
Arquitetura de Celulares
Murilknot
 
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
Eteg
 
Dispositivos Móveis
Dispositivos MóveisDispositivos Móveis
Dispositivos Móveis
fylipe69
 

Similar a Aula 1 - Introdução ao Mobile (20)

Ciclo de palestras da JFRJ - Aplicativos Móveis
Ciclo de palestras da JFRJ - Aplicativos MóveisCiclo de palestras da JFRJ - Aplicativos Móveis
Ciclo de palestras da JFRJ - Aplicativos Móveis
 
Restaurante
RestauranteRestaurante
Restaurante
 
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
 
Aula 01 - Apresentaçã e Conceitos.pptx
Aula 01 - Apresentaçã e Conceitos.pptxAula 01 - Apresentaçã e Conceitos.pptx
Aula 01 - Apresentaçã e Conceitos.pptx
 
Desenvolvendo aplicações móveis
Desenvolvendo aplicações móveisDesenvolvendo aplicações móveis
Desenvolvendo aplicações móveis
 
Resumo Desenvolvimento Mobile
Resumo Desenvolvimento MobileResumo Desenvolvimento Mobile
Resumo Desenvolvimento Mobile
 
Palestra Mobilidade - Computação móvel, dispositivos e aplicativos
Palestra Mobilidade - Computação móvel, dispositivos e aplicativosPalestra Mobilidade - Computação móvel, dispositivos e aplicativos
Palestra Mobilidade - Computação móvel, dispositivos e aplicativos
 
Sergio antao 03_s_tc5_final
Sergio antao 03_s_tc5_finalSergio antao 03_s_tc5_final
Sergio antao 03_s_tc5_final
 
Sistemas operacionais mobile
Sistemas operacionais mobileSistemas operacionais mobile
Sistemas operacionais mobile
 
TelemóVeis E Sistemas Operativos
TelemóVeis E Sistemas OperativosTelemóVeis E Sistemas Operativos
TelemóVeis E Sistemas Operativos
 
Arquitetura de Celulares
Arquitetura de CelularesArquitetura de Celulares
Arquitetura de Celulares
 
Palestra Mobilidade
Palestra MobilidadePalestra Mobilidade
Palestra Mobilidade
 
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2014
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2014Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2014
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2014
 
Plataforma móvel ou aplicacoes moveis
Plataforma móvel ou aplicacoes moveisPlataforma móvel ou aplicacoes moveis
Plataforma móvel ou aplicacoes moveis
 
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
 
Java
JavaJava
Java
 
Apresentacao jornada-unesp-2011
Apresentacao jornada-unesp-2011Apresentacao jornada-unesp-2011
Apresentacao jornada-unesp-2011
 
Dispositivos Móveis
Dispositivos MóveisDispositivos Móveis
Dispositivos Móveis
 
Introdução ao desenvolvimento para android
Introdução ao desenvolvimento para androidIntrodução ao desenvolvimento para android
Introdução ao desenvolvimento para android
 
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEISLIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
LIVRO PROPRIETÁRIO - PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
 

Más de Cloves da Rocha

Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de Software
Cloves da Rocha
 

Más de Cloves da Rocha (20)

Mineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdfMineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdf
 
Live: Inteligência Artificial (IA) para pequenas e médias empresas
Live: Inteligência Artificial (IA) para pequenas e médias empresasLive: Inteligência Artificial (IA) para pequenas e médias empresas
Live: Inteligência Artificial (IA) para pequenas e médias empresas
 
Introdução a Machine Learning na Prática
Introdução a Machine Learning na PráticaIntrodução a Machine Learning na Prática
Introdução a Machine Learning na Prática
 
II JEDI 2019 - OUP e OPS
II JEDI 2019 - OUP e OPS II JEDI 2019 - OUP e OPS
II JEDI 2019 - OUP e OPS
 
Café.COM - OUP | Observatório de Projetos de Software (OPS) com ênfase em da...
Café.COM - OUP | Observatório de Projetos de Software (OPS)  com ênfase em da...Café.COM - OUP | Observatório de Projetos de Software (OPS)  com ênfase em da...
Café.COM - OUP | Observatório de Projetos de Software (OPS) com ênfase em da...
 
Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de Software
 
Observatório de Projetos de Software com ênfase em dados abertos
Observatório de Projetos de Software com ênfase em dados abertosObservatório de Projetos de Software com ênfase em dados abertos
Observatório de Projetos de Software com ênfase em dados abertos
 
Gestão de Riscos em Processos de Negócios
Gestão de Riscos em Processos de NegóciosGestão de Riscos em Processos de Negócios
Gestão de Riscos em Processos de Negócios
 
Palestra GEOMARKETING
Palestra GEOMARKETINGPalestra GEOMARKETING
Palestra GEOMARKETING
 
Utilização de Ferramenta Para Monitoração de Desempenho Baseada em Métodos Ág...
Utilização de Ferramenta Para Monitoração de Desempenho Baseada em Métodos Ág...Utilização de Ferramenta Para Monitoração de Desempenho Baseada em Métodos Ág...
Utilização de Ferramenta Para Monitoração de Desempenho Baseada em Métodos Ág...
 
Aula 04 - Estudo de Caso Atacadão
Aula 04 - Estudo de Caso AtacadãoAula 04 - Estudo de Caso Atacadão
Aula 04 - Estudo de Caso Atacadão
 
Café com André Menelau
Café com André MenelauCafé com André Menelau
Café com André Menelau
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
APRESENTAÇÃO DO PROFESSOR - By Prof. Cloves Rocha
APRESENTAÇÃO DO PROFESSOR - By Prof. Cloves RochaAPRESENTAÇÃO DO PROFESSOR - By Prof. Cloves Rocha
APRESENTAÇÃO DO PROFESSOR - By Prof. Cloves Rocha
 
Principais Certificações em TIC - ITIL
Principais Certificações em TIC - ITILPrincipais Certificações em TIC - ITIL
Principais Certificações em TIC - ITIL
 
Principais Certificações em TIC
Principais Certificações em TIC Principais Certificações em TIC
Principais Certificações em TIC
 
I Café ETE PORTO DIGITAL | EDUCAÇÃO PARA O SÉCULO 21
I Café ETE PORTO DIGITAL | EDUCAÇÃO PARA O SÉCULO 21I Café ETE PORTO DIGITAL | EDUCAÇÃO PARA O SÉCULO 21
I Café ETE PORTO DIGITAL | EDUCAÇÃO PARA O SÉCULO 21
 
XII Café e CODE - Provocações do Mestre
XII Café e CODE - Provocações do MestreXII Café e CODE - Provocações do Mestre
XII Café e CODE - Provocações do Mestre
 
Padrões de Projeto de Software Orientado a Objetos
Padrões de Projeto de Software Orientado a ObjetosPadrões de Projeto de Software Orientado a Objetos
Padrões de Projeto de Software Orientado a Objetos
 
XI Café e CODE - Provocações do Mestre
XI Café e CODE - Provocações do MestreXI Café e CODE - Provocações do Mestre
XI Café e CODE - Provocações do Mestre
 

Último

Último (9)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 

Aula 1 - Introdução ao Mobile

  • 1. INTRODUÇÃO - Prof. Cloves Rocha (cloves.rocha@faculdadeg uararapes.edu.br) pt.slideshare.net/ClovesRocha
  • 2. EMENTA Computação para Dispositivos Móveis  Examina o projeto e implementação de sistemas computacionais onipresentes, ou seja, aplicações móveis, acessíveis por meio de quaisquer dispositivos computacionais e integráveis com aplicações existentes;  Além disso, enfatiza aspectos práticos, por meio da utilização de ferramentas e linguagens de programação para o desenvolvimento de aplicações móveis.
  • 3. INTRODUÇÃO  A telefonia móvel, desde que foi criada em 1973 por Martin Cooper, trouxe diversos benefícios para todo o mundo;  A possibilidade de levar um aparelho celular no bolso e fazer ligações em qualquer lugar, a qualquer momento, foi uma inovação muito bem aceita pelos consumidores;  Sem dúvida, os aparelhos celulares hoje possuem um papel fundamental na vida de muitos.
  • 4. INTRODUÇÃO  Desde sua criação, os aparelhos celulares passaram por um processo de evolução constante;  Diversos fabricantes do mundo todo investiram tempo e recursos financeiros para criar novos aparelhos, cada vez mais modernos e desejados pelos consumidores.
  • 5. INTRODUÇÃO  Dentre os avanços obtidos destacam-se a miniaturização dos aparelhos, melhor qualidade dos sinais das operadoras (2G, 3G, 4G);  Novas funcionalidades (câmera, acelerômetro, GPS, bluetooth).
  • 7. BREVE HISTÓRICO (EM PARALELO) ...
  • 8. INTRODUÇÃO  A redução do preço dos aparelhos celulares, tornando- os mais acessíveis;  Possibilitou a aquisição dos mesmos por parte da população menos favorecida financeiramente.
  • 11. INTRODUÇÃO  São diversos os fabricantes de aparelhos celulares, dentre eles destacam-se a Motorola, Nokia, LG, Samsung, Apple e BlackBerry;  Os fabricantes costumam adotar um SO (Sistema Operacional) para seus aparelhos, em alguns casos eles desenvolvem seus próprios sistemas operacionais.
  • 12. INTRODUÇÃO  Os sistemas operacionais, também conhecidos como plataformas, mais utilizados são o Android, iOS, Windows Phone, BlackBerry OS e Symbian. Cada SO possui características únicas que as diferem das demais;  Linguagens de programação e ferramentas de desenvolvimento são os principais fatores que diferem uma plataforma da outra.
  • 13. CONCEITO Sistemas Computacionais Móveis são sistemas computacionais que podem facilmente ser movidos fisicamente ou cujas capacidades podem ser utilizadas enquanto eles estão sendo movidos.
  • 14. CONCEITO Devido a mobilidade, eles normalmente oferecem recursos e características que não encontramos em sistemas comuns:  Monitoramento do nível de energia e prevenção de perda de dados em caso de pane de energia;  Armazenamento de dados local e/ou remoto, através de conexão com ou sem fio;  Sincronização de dados com outros sistemas; Atualmente, consideramos sistemas móveis os sistemas que são desenvolvidos para rodar em palmtops, celulares, tablets e similares.
  • 15. BREVE HISTÓRICO ...  Na visão dos Dispositivos Móveis a computação móvel começou em meados de 1992;  Através do lançamento do handheld chamado Newton Message PAD, pela Apple.
  • 17. BREVE HISTÓRICO ... Características do Newton Tela sensível ao toque; 1 MB de memória total; e Capacidade de transmissão de dados de 38.5kbps. O modelo não emplacou. Ele era muito grande, pesado e caro, mas é considerado o início dos dispositivos móveis.
  • 18. BREVE HISTÓRICO ...  Em 1996, a U.S. Robotics (conhecida fabricante de placas fax-modem) lançou o (Palm) Pilot 1000 e 5000;  Estes dispositivos tiveram grande aceitação no mercado e lançaram as bases de toda uma plataforma de “Palms” que chegaram a atingir 80% do mercado mundial e existem até hoje;  U.S. Robotics foi adquirida pela 3Com que desmembrou a empresa Palm Inc. (empresa voltado ao mercado de PDAs).
  • 20. BREVE HISTÓRICO ...  Também em 1996, começaram a surgir dispositivos com o Windows CE 1.0, da Microsoft, como o NEC MobilePro 200 e o Casio A-10;  Até o lançamento do Windows CE 3.0 e da plataforma Pocket PC, em 2000, a plataforma Windows CE não teve grande aceitação do mercado;  Mas a partir do Sistema Operacional Pocket PC 2000, embutido em dispositivos como o HP Jornada e o Compaq Ipaq, esta plataforma ganhou aceitação do mercado e começou a crescer.
  • 22. BREVE HISTÓRICO ...  A empresa Symbiam foi formada em 1998 por alguns dos maiores fabricantes de celulares do mundo (Nokia) e a PSION;  Umas das grandes contribuições desta empresa foi um sistema operacional móvel e plataforma de computação denominado Symbiam OS, projetado para smartphones e handhelds, sob conduta da Nokia.
  • 23. BREVE HISTÓRICO ...  O primeiro conceito de um computador no estilo Tablet foi criado na década de 60 e início da de 70 por Alan Kay e chamava-se DynaBook;  Curiosamente, Alan Kay lançou sua ideia no artigo “A Personal Computer for Children of All Ages”, onde visava o comportamento de crianças na utilização e na educação através de um computador de mão;  O artigo inspirou mais tarde Steve Jobs e Bill Gates a criarem novas ideias e produtos voltados a computação móvel;  Os tablets como conhecemos hoje só vieram a aparecer em 1998 e 2001, com o primeiro tablet colorido, o Fujitsu Stylistic 2300.
  • 25. BREVE HISTÓRICO (EM PARALELO) ...  Paralelo ao desenvolvimento dos dispositivos móveis também avançava a telefonia móvel;  Em 1973 a Motorola criou o primeiro telefone realmente móvel e portátil, Motorola DynaTAC 8000X;  Surge a 1ª Geração de celulares analógicos.
  • 26. BREVE HISTÓRICO (EM PARALELO) ...  Em 1990 surgiu a 2ª Geração, a 2G, já com tecnologia de rede digital;  A rede GSM veio logo em seguida, lançada na Finlândia;  Melhorou a transmissão de voz, barateou o custo e massificou a utilização de celulares no mundo;  Em 2001 apareceu no Japão a rede 3G. Esta rede é digital, de alta velocidade proporcionando melhor transmissão de dados em conjunto com voz e a tão sonhada vídeo-chamada tornou-se realidade;  Em meados de 2009, surgiu a rede 4G com a promessa de velocidade de transmissão 10 vezes superior à 3G.
  • 27. DESAFIOS DA MOBILIDADE Vamos ver alguns desafios e barreiras que precisam ser transpostos para viabilizar certas soluções deste tipo.  Custo de hardware. Para certas aplicações, são demandados certos dispositivos que têm um custo ainda relativamente elevado;  Baixo poder de processamento. Como os dispositivos móveis tem reserva de energia limitada, para garantir uma autonomia de uso razoável, a saída é cortar em poder de processamento das CPUs.
  • 28. DESAFIOS DA MOBILIDADE  Pouca infraestrutura de comunicação. A rede de comunicação de dados existente (WI-FI, GSM/GPRS ou EDGE, etc.) ainda não está confiável suficientemente para certos tipos de aplicações;  Mão-de-obra insuficiente. Ainda há uma cultura na área de TI de que desenvolver para dispositivos móveis é a mesma coisa de desenvolver para desktop. São parecidos, mas não iguais;  Interoperabilidade. A comunicação de sistemas móveis com sistemas já existentes nas empresas é um grande desafio, principalmente porque tais sistemas não foram construídos para este tipo de interação.
  • 29. AS PRINCIPAIS LINGUAGENS DE PROGRAMAÇÃO USADAS EM DESENVOLVIMENTO MOBILE Java (Java ME)  Adquirida pela Oracle, é a linguagem mais utilizada por programadores ao redor do mundo. Orientado a objetos, o Java é compilado e flexível, podendo ser executada tanto numa janela de navegador quanto em aparelhos sem browser.  Outra grande vantagem da linguagem Java é a capacidade multiplataforma, cujo código é executado com especial sucesso em sistemas Android e Windows.
  • 30. AS PRINCIPAIS LINGUAGENS DE PROGRAMAÇÃO USADAS EM DESENVOLVIMENTO MOBILE C  Desenvolvida nos anos 1970, pode-se dizer que a linguagem C é como o latim para a maioria dos idiomas ocidentais: uma língua-mãe. Dela se originaram Java, C# e praticamente todas as outras. Contudo, assim como o latim, é complexa e exige de você muitas linhas para cumprir tarefas que outras linguagens fazem em apenas uma; Também é compilado, e ideal para sistemas com muitos cálculos ou para jogos com gráficos espetaculares. Se você tiver tempo e criatividade, pode ser uma escolha interessante.
  • 31. AS PRINCIPAIS LINGUAGENS DE PROGRAMAÇÃO USADAS EM DESENVOLVIMENTO MOBILE C++  Derivada diretamente da linguagem C, essa linguagem é uma das mais populares e utilizadas pelo comércio devido ao fácil manuseio e pluralidade de plataformas. Você pode criar aplicativos simples para uma infinidade de funções. Mas não é só isso. Para se ter uma ideia, a C++ foi usada como base para o desenvolvimento de softwares grandiosos como Photoshop, Illustrator, Firefox e Microsoft Office. Python  Esse sim parece nome de alguma civilização dos planetas inventados por George Lucas e Gene Roddenberry. No entanto, o nome é oriundo do grupo de comediantes ingleses Monty Python. É uma linguagem com sintaxe clara e didática, excelente particularmente se você for um iniciante. No entanto, é uma linguagem robusta, uma vez que permite ao programador resultados sofisticados apesar da simplicidade. Está presente em web apps megapopulares como Instagram e Pinterest, por meio do framework Django, além de Yahoo! e Google.
  • 32. AS PRINCIPAIS LINGUAGENS DE PROGRAMAÇÃO USADAS EM DESENVOLVIMENTO MOBILE Objective-C Também conhecida como Obj-C, essa linguagem foi utilizada pela Apple enquanto a C++ era a moda. Também foi desenvolvida a partir da linguagem Smalltalk, não obstante com mais foco em funções gráficas e de exibição. É a base original dos aplicativos feitos para iOS e Mac OS X e orientada a objeto. Está em processo de substituição pela Swift. Swift É a nova linguagem desenvolvida pela Apple. Não há opção melhor se o seu objetivo é focar em aparelhos iOS. Recentemente, a marca inventada por Steve Jobs anunciou que a Swift será transformada em código aberto. A medida busca aumentar o número de programadores e transformá-la na linguagem mais popular para desenvolvimento de softwares e aplicativos mobile.
  • 33. AS PRINCIPAIS LINGUAGENS DE PROGRAMAÇÃO USADAS EM DESENVOLVIMENTO MOBILE C#  Assim como o Obj-C está para a Apple, o C# está para a Microsoft;  Todavia. Logo, se pretende desenvolver aplicativos que englobem o sistema mais popular do mundo é melhor incluir a linguagem C# na sua lista.
  • 35. LINGUAGENS CROSS-PLATAFORMA  Cross-Plataforma (cross-platform) de desenvolvimento mobile é uma técnica para desenvolver uma única base de código para os aplicativos que venham a ser utilizados em diferentes sistemas operacionais.  Os principais sistemas operacionais, tais como telefone Android e iOS são estruturalmente diferentes em sua arquitetura.
  • 37. LINGUAGENS CROSS-PLATAFORMA MoSync  É uma ferramenta avançada para o desenvolvimento de aplicações multi-plataforma. O kit de desenvolvimento padrão inclui bibliotecas para tecnologias comuns utilizadas para moldar o futuro da web. MoSync é em grande parte compatível com o Eclipse e suporta C / C ++, PHP, Python, Ruby, JavaScript e Java.  A melhor coisa sobre o MoSync é que você consegue importar aplicativos nativos sem muito esforço, aplicativos nativos como Symbian, Windows Mobile, Linux Mobile, Android, iOS e plataformas iPad.
  • 38. LINGUAGENS CROSS-PLATAFORMA Whoop Tem uma interface que permite aos desenvolvedores WYSYWIG arrastar e soltar elementos dos aplicativos e ajustar o código da barra de tarefas. Ele funciona bem com Windows Mobile, Symbian Blackberry, Android, iPhone, e outros grandes sistemas operacionais mobile. Ele é gratuito, com alguns pacotes pagos disponíveis. Appcelerator (Titanium) Utiliza a recursos web para permitir a compatibilidade entre plataformas. Os aplicativos nativos são derivados de tecnologias como HTML5, CSS3, JavaScript, PHP, Python e Ruby. Esta plataforma é realmente eficiente, e dá aos usuários acesso a mais de 300 API.
  • 39. LINGUAGENS CROSS-PLATAFORMA Rhomobile É uma ferramenta integrada desenvolvida em Ruby, e é usado para fazer aplicações que funcionam em várias plataformas mobiles. Ele permite que aplicativos nativos possam ser criado para Windows Mobile, Symbian, Android, iOS e RIM. Isso deriva da compatibilidade acentuada nos recursos avançados de dispositivos móveis. RhoHub, é um ambiente de código nuvem de hospedagem enquanto RhoSync é um on-the-fly servidor independente, o que aumenta a riqueza da experiência do desenvolvedor. Ambos RhoSync e RhoHub tornam o desenvolvimento mobile mais prático e livre de problemas. PhoneGap Esta plataforma de desenvolvimento premiada é capaz de lidar com aplicativos para Android, Symbian, Palm, Blackberry, iPhone e iPads. Ele é baseado em tecnologias tais como JavaScript, HTML e CSS3. PhoneGap é muito eficiente e dá ao desenvolvedor acesso fácil aos componentes de hardware avançados, como o acelerômetro e GPS Tracker. Além disso, a equipe PhoneGap dá treinamento gratuito para desenvolvedores. Há uma ativa comunidade de desenvolvedores que está constantemente estudando as características pertinentes da linguagem.
  • 40. LINGUAGENS CROSS-PLATAFORMA Adobe Air  Desenvolvido pela renomada Adobe, o Adobe Air utiliza extensões AIR (Adobe Integrated Runtime) para poder acessar recursos específicos nativos dos sistemas operacionais.  Pode ser usado para as principais plataformas do mercado. É uma ferramenta que fornece um bom nível de experiência de usuário, quando comparado com outros concorrentes. Está disponível no site da Adobe para download.
  • 41. LINGUAGENS CROSS-PLATAFORMA Ionic  Focado em performance, design e otimizações, essa ferramenta visa ao máximo se aproximar das aplicações nativas.  Entre as tecnologias utilizadas no Ionic, encontramos o AngularJS, TypeScript, HTML5 e o JavaScript.
  • 42. LINGUAGENS CROSS-PLATAFORMA Xamarin  Finalmente, Xamarin é uma plataforma C# onde o código é escrito em geral, para iOS e Android e compilados de forma diferente durante a implantação. Xamarin possuí vários recursos. Antes de compilar, Xamarin executa o código em um framework .NET em tempo de execução e oferece interface nativa para qualquer iOS ou Android.  Para as grandes equipes que trabalham em diferentes partes de um mesmo projeto, podemos indicar este como versátil e adaptável.
  • 43. LINGUAGENS CROSS-PLATAFORMA React Native Diversas companhias, assim como o Facebook, apostaram no React Native para o desenvolvimento de suas aplicações. Alguns aplicativos de sucesso que utilizam são:  Facebook – mais de 1 bilhão de instalações  Instagram – mais de 1 bilhão de instalações  Airbnb – mais de 10 milhões de instalações  Walmart – mais de 10 milhões de instalações O framework possui diversas funcionalidades que auxiliam tanto no desenvolvimento, quanto na manutenção de uma aplicação em produção. Abaixo estão exemplificadas algumas delas:
  • 44. DÚVIDAS ? Aulas disponíveis em: pt.slideshare.net/ClovesRocha
  • 45. REFERÊNCIAS Xamarin Forms - Desenvolvimento de aplicações móveis multiplataforma - Everton Coimbra de Araújo.