jQuery Mobile
    Marcelo Quinta
   Triangulum / UFG / Globalcode
http://bit.ly/tdcmobile
  Site móvel do TDC
Onde seu site roda?
Adaptar estrutura existente
  Criar nova experiência
Usuários querem
resposta rápida
e com a famosa
Experiência do Usuário
Tamanho da tela
  Quantidade de cores suportadas
   Capacidade de processamento
   Capacidade de armazenamento
     Tempo de vida da bateria
 Mecanismos de interação limitados
Largura de banda e custo de plano
             de dados
Falta de padronização no suporte à
              mídias
Uma visão direta (ágil) sobre
  desenvolvimento móvel
      http://futurefriend.ly/
Tela grande                     Parada
                  Focada



                    Entrada
                    eficiente   Confortável




Conexão rápida
 CPU poderoso

                 CONTEXTO
Oncocomeço?
A plataforma é o browser (móvel)
Conteúdo



           Conteúdo
Técnica




   http://futebolbusiness.com.br/imagens/2011/06/Neymar-Santos.jpg
Responsive Web design

• O mesmo HTML para todos os dispositivos;
• Grid flexível;        @media screen and (min-width: 480px) {   .content {

• Media queries; }   .social_icons {
                          float: left;


• Imagens flexíveis;     }
                          display: none

• Não há adaptação de conteúdo no servidor;
• Resolve bem o problema de resolução de
browser;
• Future-friendly;
• Manipulação ineficiente de imagens, se não
tomar cuidado;
• Só resolve problema da resolução;
Mobile
          First


                               Luke Wroblewski

http://static.lanyrd.net/cropped-profile-photos/6bc54848de8f99c13a1025ac9420b96b01257e09.jpg
Progressive Enhacement

• O mesmo HTML “base” para todos os dispositivos;
• Java script para cada perfil;
• Melhoramento progressivo, de acordo com a
demanda;
• A adaptação vai mais para o lado cliente;
• Resolve bem o problema de resolução de
browser e já ocorre uma adaptação mais fina;
• Confiar demais na engine do navegador
cliente;
• Mesmo HTML e imagens continuam...
Tecnologias
Não perca eu tempo




         Nativo X Web
Server-side adaptation

• Mais antiga e mais utilizada em grandes aplicações;
• Detecção de dispositivo e entrega de
conteúdo refinado;
• Usada por Google, Facebook, Amazon,Youtube, eBay,
Yahoo, INF-UFG...;
• “It is difficult to find a successful mobile website that
does not use server-side content adaptation” goMobi;
• Maior adaptação possível, com riqueza de
detalhes;
• Bibliotecas de detecção de dispositivo com
preço caro;
• Maior tempo de implementação;
Famílias de dispositivos




http://www.cs.gmu.edu/~jessica/VizTree_files/tree.gif
Mobile browsers
• Muita diversidade;
• Alguns muito limitados;
• Alguns muito inovadores;
• Alguns baseados em proxy;
• A maioria sem documentação;
• A maioria sem ferramentas de debug.
Mobile browsers
• Interação
 • Baseados em cursor;
 • Baseados em touch;
 • Baseados em multi-touch;
 • Alguns com suporte a zoom;
 • Alguns desconhecidos dos
    desenvolvedores.
JQuery Mobile




 http://jquerymobile.com/
JQuery Mobile não é
• Um framework alternativo ao JQuery
  comum;
• Um SDK com compilação híbrida/nativa;
• Um framework para fazer tudo com
  JavaScript;
• Uma solução para todas as aplicações;
JQuery Mobile é
 Framework multi-plataforma
para criação de webapps cuja
interface de usuário acontece
          via touch.
Web app
• Site ou serviço que roda dentro do
  contexto de um browser.
Onde roda
Por quê?
• Código HTML5 não intrusivo;
• Open-source;
• Lightweight;
• Multiplataforma por progressive
  enhancement;
• Suporte para acessibilidade;
• Personalizável;
• Inclui biblioteca javascript
Você não precisa saber
• HTML5;
• CSS3;
• Javascript;
• JQuery;
O que preciso para
      desenvolver
• Editor de texto;
• Browser.

• Compilador híbrido? Framework? Não!
• Emulador? Simulador?
     www.mobilexweb.com/emulators
Voltinha no código
Customize seu tema
O que dá pra fazer?
           Mais em
  http://www.jqmgallery.com/
Lembre-se que
 podemos usar JS para:
• Carregar conteúdo;
• Customizações especiais;
• Estilizar para dispositivos não compatíveis;
• Geolocalização, cache off-line,
    acelerômetro;
•
Compatibilidade
•   iOS;
•   Android;
•   IE 9;
•   Blackberry >= 5.0;
•   Symbian Touch;
•   HP WebOS;
•   Windows Phone;
•   Opera Mini, Opera Mobile, Firefox;
•   Bada, Meego, Kindle...
http://www.w3.org/Talks/2005/1227-W3C-22C3/Cake.jpg



                             Obedeça os padrões
Seu sistema móvel está bom?




     http://ready.mobi/launch.jsp?locale=en_EN
Seu sistema móvel está bom?




         http://www.gomobrasil.com.br/br/d/
http://bit.ly/testemobile
http://www.w3.org/Talks/2005/1227-W3C-22C3/Cake.jpg



          É possível debugar no dispositivo
http://www.w3.org/Talks/2005/1227-W3C-22C3/Cake.jpg



                                                 Livros
marceloricardoquinta@gmail.com
           @mrquinta

Jquery Mobile