Este documento apresenta uma introdução ao desenvolvimento para iPhone, discutindo por que desenvolver para a plataforma, os passos para criar uma aplicação e uma introdução ao framework CocoaTouch.
5. Por que desenvolver para iPhone? MERCADO Steve Jobs anunciou recentemente que foram vendidos 50 milhões de iPhone e 35 milhões de iPodTouch. 5
6. Por que desenvolver para iPhone? HÁBITOS DE CONSUMO A AppStore fará 2 anos em julho de 2010 e já possui mais de 180 mil aplicações disponíveis. Segundo a Apple já foram vendidas mais de 4 bilhões de aplicações. As pessoas já aprenderam como utilizar a AppStore, e para grande parte delas, isto já se tornou um hábito. 6
7. Por que desenvolver para iPhone? VERSATILIDADE Seja qual for sua idéia para uma aplicação, ela poderá ser bem implementada no iPhone, desde que seja apropriada para dispositivos móveis. Jogos, aplicativos de referência, aplicativos promocionais, clientes alternativos para aplicações web, aplicações corporativas para vendedores e/ou coleta de dados, etc. 7
8. Por que desenvolver para iPhone? UNIFORMIDADE A ausência de diversos fabricantes acaba garantindo uma plataforma uniforme e estável, além de muito rica em documentação e com uma ampla comunidade de desenvolvedores. 8
9. Por que desenvolver para iPhone? FUTURO A Apple não fica parada. O iPhone OS 4.0 vem aí e oferece uma série de recursos que tornarão o desenvolvimento para a plataforma ainda mais interessante. Desenvolver para iPhone deixa você mais próximo das novidades da Apple. Como exemplo, o iPad, lançado em abril de 2010, compartilha a maior parte das ferramentas e paradigma de desenvolvimento do iPhone. 9
10. Parte II - Receita para uma Aplicação iPhone 10
11. Ingredientes Computador Macintosh Intel (modelos de 2006 em diante) Sistema Operacional Leopard ou SnowLeopard (Mac OS X 10.5 ou mais recente) Um iPhone (ou iPodTouch) Uma conta no iPhone Dev Center 11
12. Tipos de Contas no iPhoneDev Center Gratuita: habilita o acesso às ferramentas de desenvolvimento (iPhone SDK, Xcode, etc.). Não permite a execução da aplicação no iPhone, apenas no simulador; Standard $99: habilita testes e debug no iPhone, permite publicar suas aplicações na AppStore; Empresa $299: Mais adequada para desenvolvimento de aplicações a serem distribuídas internamente. O cadastro nesta modalidade envolve certa burocracia e pode demorar. Ver diferenças entre os tipos de contas 12
13. Modo de Preparo (em sete passos) Familiarize-se com o iPhone Instale as ferramentas de desenvolvimento Estude Objective-C Escolha frameworks e engines apropriados Construa sua aplicação Prepare sua aplicação para a venda na AppStore Promova sua aplicação 13
14. Passo 1: Familiarize-se com o iPhone Formas de interação bastante peculiares, diferentes de outros dispositivos Somente depois de utilizar o iPhone por um tempo, você terá idéia do que funciona bem em matéria de usabilidade Explore as aplicações disponíveis na AppStore, confira se sua idéia ainda não foi implementada 14
15. Passo 2: Instale as Ferramentas de Desenvolvimento Após instalar o iPhone SDK você terá em seu Mac OS as seguintes ferramentas: XCode Interface Builder Instruments iPhone Simulator 15
26. Passo 3: Estude Objective-C Fontes para Estudo Aulas sobre Desenvolvimento para Iphone da Universidade de Stanford– Os vídeos das aulas estão disponíveis no iTunes U. Introduction to The Objective-C Programming Language – Manual de Referênciada Apple 21
27. Passo 4: Escolha os Frameworks/Engines Apropriados Camadas do iPhone OS 22
28. Passo 4: Escolha os Frameworks/Engines Apropriados Camadas do iPhone OS Conjunto de frameworks de alto nível em Objective-C. ( Foundation, UIKit ) Conjunto de interfaces para acesso aos recursos de áudio e vídeo. ( OpenGL ES, Core Audio, Core Animation ) Conjunto de interfaces fundamentais acessíveis via linguagem C. ( Core Foundation, CFNetwork, SQLite ) 23
29. Passo 4: Escolha os Frameworks/Engines Apropriados Camadas do iPhone OS É recomendável que sua aplicação acesse as camadas inferiores, apenas quando a funcionalidade desejada não está disponível nas camadas superiores. Grande parte das aplicações acessa apenas a CocoaTouch. É comum, entretanto, jogos acessarem as camadas inferiores. 24
30. Passo 4: Escolha os Frameworks/Engines Apropriados CocoaTouch 25
31. Passo 4: Escolha os Frameworks/Engines Apropriados CocoaTouch O CocoaTouch coloca em prática muitos dos padrões de projeto do famoso livro Padrões de Projeto - SoluçõesReutilizáveis de Software Orientado a Objetos. Caso sua aplicação precise utilizar amplamente o UIKit, é recomendável que você leia a documentação sobre como estes padrões foram adaptados no CocoaTouch. 26
33. Passo 4: Escolha os Frameworks/Engines Apropriados Cocos2D Iphone Game engine paraconstrução de jogos 2D utilizando Objective-C http://www.cocos2d-iphone.org/ 28
34. Passo 4: Escolha os Frameworks/Engines Apropriados Oolongengine Game engine em C++ para contrução de jogos 2D e 3D http://code.google.com/p/oolongengine/ 29
42. Passo 5: Construa sua aplicação Planeje sua aplicação, comece pela interface. Se você planeja utilizar o UIKit é fortemente recomendada a leitura do guia de usabilidade da Apple: Human Interface Principles: Creating a Great User Interface 32
43. Passo 5: Construa sua aplicação Tenha o hábito de testar sua aplicação no iPhone durante o desenvolvimento. Alguns processos que são instantâneos no simulador podem ser lentos demais no dispositivo real. Sempre que possível peça a pessoas que não estejam envolvidas com o desenvolvimento da aplicação para testá-la. Assim, você pode verificar se sua abordagem para a interface funciona, pode obter sugestões de melhorias e encontrar bugs precocemente. 33
44. Passo 6: Prepare sua Aplicação para a Venda na AppStore Entendendo os papéis do Program Portal. TeamAgent– dono da conta, quem pagou por ela. O único que pode autorizar a publicação de uma aplicação. TeamAdmin– Pode adicionar membros e dispositivos. Aprova solicitações de certificados digitais e gera perfis de provisionamento de desenvolvimento. TeamMember– Pode solicitar certificados digitais e baixar perfis de provisionamento de desenvolvimento. 34
45. Passo 6: Prepare sua Aplicação para a Venda na AppStore Passos para testar sua aplicação no iPhone 35
46. Passo 6: Prepare sua Aplicação para a Venda na AppStore Distribuindo sua aplicação para beta-testers. (detalhes) 36
47. Passo 6: Prepare sua Aplicação para a Venda na AppStore Passos para construir versão de distribuição 37
48. Passo 6: Prepare sua Aplicação para a Venda na AppStore Submeta sua aplicação para a AppStore via ItunesConnect 38
49. Passo 7: Promova sua Aplicação Coloque vídeos da sua aplicação no youtube; Publique anúncios em blogs lidos pelo público alvo; Crie uma versão gratuita e permita a compra da versão completa de dentro da própria aplicação; Invista em Marketing até onde seu orçamento permitir. 39