• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Desenvolvendos Apps para iPad - TDC 2010

on

  • 3,235 views

Slides da minha apresentação sobre iPad no The Developers Conference 2010 em Floripa.

Slides da minha apresentação sobre iPad no The Developers Conference 2010 em Floripa.

Com alguns extras: mais links e exemplo de implementação. :)

Statistics

Views

Total Views
3,235
Views on SlideShare
3,235
Embed Views
0

Actions

Likes
3
Downloads
59
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Desenvolvendos Apps para iPad - TDC 2010 Desenvolvendos Apps para iPad - TDC 2010 Presentation Transcript

    • Desenvolvendo para iPad Apps Corporativas com Elegância Felipe Cypriano
    • iPad • 9,7” LED Display com IPS • 1024 x 768 px de resolução • 1Ghz Apple A4 • 256mb de RAM
    • Mercado iPad Global Market Share 95% 2% 2% Strategic Analytics 3ºT 2010
    • Qual tablet pretende comprar Pesquisado por ChangeWave nos EUA
    • Faça Apps lindas
    • Interfaces mais realistas no iPad A percepção de valor da informação digital é maior
    • Cuidado para não exagerar
    • iPhone vs iPad • Mail no iPhone • Hierarquia de vários níveis
    • iPhone vs iPad • Mail no iPad • Tela única com o mínimo de mudanças no contexto • Poucos níveis de hierarquia
    • O Ícone
    • O Ícone
    • O Ícone
    • O Ícone
    • O Ícone PNG Original
    • O Ícone Efeitos PNG Original Automáticos
    • Controles Tamanho “Ponta do Dedo” • Dedos não são precisos como ponteiros do mouse • Um mínimo ideal é uma área de 44 x 44 pixels • Boa separação entre os elementos
    • Sem Amnésia • A última tela que o usuário estava usando deve ser lembrada e reaberta
    • Sem Amnésia • Salve cedo, salve constantemente Commit early, commit often
    • Sem Amnésia • A qualquer momento um aplicativo pode ser informado que vai ser fechado
    • Sem Amnésia • A qualquer momento um aplicativo pode ser informado que vai ser fechado Não há nada que você possa fazer para impedir
    • Orientações (nos dois sentidos) • Manter foco no conteúdo principal • Não fazer mudanças radicais no layout • Evitar entrada de dados textuais
    • Launch Image
    • Launch Image
    • Objective-C • 1984 • Dynamic method dispatch • Runtime decision making • Runtime class extensions
    • Objective-C Pessoa.h @interface Pessoa: NSObject { NSString *nome; int idade; } + (Pessoa *) initWithNome:(NSString *)oNome; @end
    • Objective-C Pessoa.m @implementation Pessoa + (Pessoa *) initWithNome:(NSString *)oNome { if (self = [super init]) { nome = oNome; [nome retain]; } return self; } @end
    • Objective-C Pessoa *alguem = [Pessoa alloc]; [alguem initWithNome:@“NSString literal”];
    • Nada de Garbage Collector no iOS
    • Contagem de Referência • O runtime monitora o “retain count” • Todo objeto é criado com retain count de 1 • Precisa do objeto? [objeto retain]; • Não precisa mais? [objeto release];
    • OutraClasse
    • OutraClasse
    • OutraClasse
    • Persistindo Dados no iOS
    • Property List • Pequenas quantidades de dados • XML ou binário • Somente tipos básicos • NSUserDefaults e Settings
    • Quando Não Usar Property List • Objetos complexos • Objetos customizados • Mais de algumas centenas de KB • Carregar um plist é tudo-ou-nada • Múltiplas escritas (não ACID)
    • SQLite • Banco de dados SQL completo em um arquivo • Vem por padrão no iOS • Simples, rápido e fácil
    • Quando Não usar SQLite • Aplicações cliente/servidor • Com muita concorrência • Muitos gigabytes de dados
    • Quando Não usar SQLite • Aplicações cliente/servidor • Com muita concorrência • Muitos gigabytes de dados Não se aplica ao iPad
    • Quando Não usar SQLite no iOS • Se você não gostar de usar API em C
    • Quando Não usar SQLite no iOS • Se você não gostar de usar API em C int sqlite3_open(const char *filename, sqlite3 **db); int sqlite3_exec(sqlite3 *db, const char *sql, int (*callback)(void*,int,char**,char**), void *context, char **error);
    • Core Data • Framework de persistência • Persiste os dados no SQLite ou binário
    • Comunicação pela internet Como obter dados do sistema legado
    • XML • NSXMLParser • API orientada à eventos: mais simples • libxml2 • Toda a árvore é carregada em memória • API em C: rápida e consumo menor de memória • Complexa para gerenciar estado
    • JavaScript Object Notation • Mais leve que XML • json-framework, um wrapper open source para Objective-C
    • Web Service com SOAP/WSDL • Sem suporte oficial • Mais pesado tanto em CPU quanto em rede • Duas opções: • Na mão, criando XML e headers • wsdl2objc, biblioteca open source
    • Links • json-framework: http://code.google.com/p/ json-framework/ • wsdl2objc: http://code.google.com/p/ wsdl2objc/ • Event-Driven XML Guide: http://bit.ly/ios- event-drive-xml
    • Mac OS X
    • iOS SDK Cocoa Touch Framework
    • iOS SDK Cocoa Touch Framework XCode
    • iOS SDK Cocoa Touch Framework XCode Interface Builder
    • iOS SDK Cocoa Touch Framework XCode Interface Builder Instruments
    • iOS SDK Cocoa Touch Framework XCode Interface Builder Instruments iPhone Simulator
    • 1. Desenvolver 2. Testar 3. Distribuir
    • 1. Desenvolver Grátis 2. Testar 3. Distribuir
    • iOS Developer Program
    • iOS Developer Program 2. Testar US$ 99 / ano 3. Distribuir na App Store
    • App Store • Total controle sobre o preço • Divisão de 70/30 da receita • Apps grátis não pagam nada a mais • Sem custos de host, pagamento com cartão nem marketing
    • App Store
    • App Store A Apple tem que autorizar sua app
    • App Store A Apple tem que autorizar sua app App Store Review Guidelines http://developer.apple.com/appstore/guidelines.html
    • iOS Enterprise Program
    • iOS Enterprise Program 3. Distribuição interna US$ 299 / ano
    • Mais informações http://developer.apple.com/ http://www.delicious.com/fmcypriano/objective-c/ http://cocoadevcentral.com/d/learn_objectivec/
    • Obrigado Perguntas? Felipe Cypriano @fmcypriano felipe@wdev.com.br me@felipecypriano.com