Your SlideShare is downloading. ×
Desenvolvendos Apps para iPad - TDC 2010
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Desenvolvendos Apps para iPad - TDC 2010

2,894

Published on

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. :)

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

No Downloads
Views
Total Views
2,894
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
61
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Desenvolvendo para iPad Apps Corporativas com Elegância Felipe Cypriano
  • 2. iPad • 9,7” LED Display com IPS • 1024 x 768 px de resolução • 1Ghz Apple A4 • 256mb de RAM
  • 3. Mercado 2% 2% 95% iPad Global Market Share Strategic Analytics 3ºT 2010
  • 4. Qual tablet pretende comprar Pesquisado por ChangeWave nos EUA
  • 5. Faça Apps lindas
  • 6. Interfaces mais realistas no iPad A percepção de valor da informação digital é maior
  • 7. Cuidado para não exagerar
  • 8. iPhone vs iPad • Mail no iPhone • Hierarquia de vários níveis
  • 9. iPhone vs iPad • Mail no iPad • Tela única com o mínimo de mudanças no contexto • Poucos níveis de hierarquia
  • 10. O Ícone
  • 11. O Ícone
  • 12. O Ícone
  • 13. O Ícone
  • 14. O Ícone PNG Original
  • 15. O Ícone PNG Original Efeitos Automáticos
  • 16. 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
  • 17. Sem Amnésia • A última tela que o usuário estava usando deve ser lembrada e reaberta
  • 18. Sem Amnésia • Salve cedo, salve constantemente Commit early, commit often
  • 19. Sem Amnésia • A qualquer momento um aplicativo pode ser informado que vai ser fechado
  • 20. 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
  • 21. Orientações • Manter foco no conteúdo principal • Não fazer mudanças radicais no layout • Evitar entrada de dados textuais (nos dois sentidos)
  • 22. Launch Image
  • 23. Launch Image
  • 24. Objective-C • 1984 • Dynamic method dispatch • Runtime decision making • Runtime class extensions
  • 25. Objective-C @interface Pessoa: NSObject { NSString *nome; int idade; } + (Pessoa *) initWithNome:(NSString *)oNome; @end Pessoa.h
  • 26. Objective-C Pessoa.m @implementation Pessoa + (Pessoa *) initWithNome:(NSString *)oNome { if (self = [super init]) { nome = oNome; [nome retain]; } return self; } @end
  • 27. Objective-C Pessoa *alguem = [Pessoa alloc]; [alguem initWithNome:@“NSString literal”];
  • 28. Nada de Garbage Collector no iOS
  • 29. 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];
  • 30. OutraClasse
  • 31. OutraClasse
  • 32. OutraClasse
  • 33. Persistindo Dados no iOS
  • 34. Property List • Pequenas quantidades de dados • XML ou binário • Somente tipos básicos • NSUserDefaults e Settings
  • 35. 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)
  • 36. SQLite • Banco de dados SQL completo em um arquivo • Vem por padrão no iOS • Simples, rápido e fácil
  • 37. Quando Não usar SQLite • Aplicações cliente/servidor • Com muita concorrência • Muitos gigabytes de dados
  • 38. Quando Não usar SQLite • Aplicações cliente/servidor • Com muita concorrência • Muitos gigabytes de dados Não se aplica ao iPad
  • 39. Quando Não usar SQLite no iOS • Se você não gostar de usar API em C
  • 40. 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);
  • 41. Core Data • Framework de persistência • Persiste os dados no SQLite ou binário
  • 42. Comunicação pela internet Como obter dados do sistema legado
  • 43. 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
  • 44. JavaScript Object Notation • Mais leve que XML • json-framework, um wrapper open source para Objective-C
  • 45. 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
  • 46. 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
  • 47. Mac OS X
  • 48. iOS SDK Cocoa Touch Framework
  • 49. iOS SDK Cocoa Touch Framework XCode
  • 50. iOS SDK Cocoa Touch Framework Interface Builder XCode
  • 51. iOS SDK Cocoa Touch Framework Instruments Interface Builder XCode
  • 52. iOS SDK Cocoa Touch Framework Instruments iPhone Simulator Interface Builder XCode
  • 53. 1. Desenvolver 2.Testar 3. Distribuir
  • 54. Grátis1. Desenvolver 2.Testar 3. Distribuir
  • 55. iOS Developer Program
  • 56. iOS Developer Program US$ 99 / ano 2.Testar 3. Distribuir na App Store
  • 57. 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
  • 58. App Store
  • 59. App Store A Apple tem que autorizar sua app
  • 60. App Store A Apple tem que autorizar sua app App Store Review Guidelines http://developer.apple.com/appstore/guidelines.html
  • 61. iOS Enterprise Program
  • 62. iOS Enterprise Program US$ 299 / ano3. Distribuição interna
  • 63. Mais informações http://developer.apple.com/ http://www.delicious.com/fmcypriano/objective-c/ http://cocoadevcentral.com/d/learn_objectivec/
  • 64. @fmcypriano Felipe Cypriano felipe@wdev.com.br me@felipecypriano.com Perguntas? Obrigado

×