SlideShare uma empresa Scribd logo
1 de 43
Introdução ao Desenvolvimento para iPhone Israel S. Paixão Jr. 2
Resumo Parte I: Por que desenvolver para iPhone? Parte II: Receita para uma aplicação iPhone. Parte III: Hello World. 3
Parte I: Por que desenvolver para iPhone? 4
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
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
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
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
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
Parte II - Receita para uma Aplicação iPhone 10
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
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
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
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
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
Passo 2: Instale as Ferramentas de Desenvolvimento XCode 16
Passo 2: Instale as Ferramentas de Desenvolvimento Interface Builder 17
Passo 2: Instale as Ferramentas de Desenvolvimento Instruments 18
Passo 2: Instale as Ferramentas de Desenvolvimento iPhone Simulator 19
Passo 3: Estude Objective-C Características da linguagem Objective-C: ,[object Object]
É orientada a objetos
Invocação de métodos através de mensagens
Dinâmica (typing, binding, loading)
Gerenciamento de memória baseado em contador de referência (ver regras)
Pode ser misturada com C++ (ver exemplo)20
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
Passo 4: Escolha os Frameworks/Engines Apropriados Camadas do iPhone OS 22
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
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
Passo 4: Escolha os Frameworks/Engines Apropriados CocoaTouch 25
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
Passo 4: Escolha os Frameworks/Engines Apropriados CocoaTouch - UIKit 27
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
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
Passo 4: Escolha os Frameworks/Engines Apropriados Unity3D iPhone http://unity3d.com/ 30
Passo 5: Construa sua aplicação Lembre-se das peculiaridades da plataforma: ,[object Object]
Apenas uma aplicação em execução
Acesso limitado ao iPhone
Tempo de resposta limitado
Tela pequena: 480x320 pixels
Recursos limitados (128~256MB RAM)31
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
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

Mais conteúdo relacionado

Mais procurados

Programa Acadêmico Embarcadero
Programa Acadêmico EmbarcaderoPrograma Acadêmico Embarcadero
Programa Acadêmico EmbarcaderoFernando Rizzato
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - BásicoHugoDalevedove
 
Plataforma iOS
Plataforma iOSPlataforma iOS
Plataforma iOSernandesjr
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisÉdipo Souza
 
Apresentação dev ios
Apresentação dev iosApresentação dev ios
Apresentação dev iosFlavio Rabelo
 
Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1Erisvaldo Junior
 
Introdução ao Titanium Mobile
Introdução ao Titanium MobileIntrodução ao Titanium Mobile
Introdução ao Titanium MobileEric Cavalcanti
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Jose Berardo
 
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneEntenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneHenrique Perticarati
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOSDevmedia
 
Desenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e androidDesenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e androidDiogo Andre Loff
 
Grupo de estudos AS3 - Introdução ao ActionScript 3.0
Grupo de estudos AS3 - Introdução ao ActionScript 3.0Grupo de estudos AS3 - Introdução ao ActionScript 3.0
Grupo de estudos AS3 - Introdução ao ActionScript 3.0Fábio Flatschart
 
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...Édipo Souza
 
Estudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do BlogEstudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do BlogVinícius Thiengo
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3Jose Berardo
 
Introdução ao Visuino por Swellington
Introdução ao Visuino por SwellingtonIntrodução ao Visuino por Swellington
Introdução ao Visuino por SwellingtonSwellington Santos
 

Mais procurados (20)

Programa Acadêmico Embarcadero
Programa Acadêmico EmbarcaderoPrograma Acadêmico Embarcadero
Programa Acadêmico Embarcadero
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - Básico
 
Plataforma iOS
Plataforma iOSPlataforma iOS
Plataforma iOS
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
 
Apresentação dev ios
Apresentação dev iosApresentação dev ios
Apresentação dev ios
 
Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1
 
1 curso-titanium-apresentacao
1 curso-titanium-apresentacao1 curso-titanium-apresentacao
1 curso-titanium-apresentacao
 
Android Aprendiz
Android AprendizAndroid Aprendiz
Android Aprendiz
 
Introdução ao Titanium Mobile
Introdução ao Titanium MobileIntrodução ao Titanium Mobile
Introdução ao Titanium Mobile
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1
 
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneEntenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOS
 
Desenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e androidDesenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e android
 
Grupo de estudos AS3 - Introdução ao ActionScript 3.0
Grupo de estudos AS3 - Introdução ao ActionScript 3.0Grupo de estudos AS3 - Introdução ao ActionScript 3.0
Grupo de estudos AS3 - Introdução ao ActionScript 3.0
 
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
 
Estudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do BlogEstudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do Blog
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3
 
Introdução ao Visuino por Swellington
Introdução ao Visuino por SwellingtonIntrodução ao Visuino por Swellington
Introdução ao Visuino por Swellington
 
Flash mobile
Flash mobileFlash mobile
Flash mobile
 
Android Studio
Android StudioAndroid Studio
Android Studio
 

Semelhante a Desenvolvimento iPhone em 7 passos

Desenvolver aplicações C# para o iPhone
Desenvolver aplicações C# para o iPhoneDesenvolver aplicações C# para o iPhone
Desenvolver aplicações C# para o iPhoneBruno Pires
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisRogério Moraes de Carvalho
 
1401 - Revista - Android.pdf
1401 - Revista - Android.pdf1401 - Revista - Android.pdf
1401 - Revista - Android.pdfjoaoJunior93
 
Programando para Iphone e Ipad
Programando para Iphone e IpadProgramando para Iphone e Ipad
Programando para Iphone e IpadMikeNandes
 
PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android Fundação Vanzolini
 
Android e Facebook - Integrando sua aplicação às redes sociais
Android e Facebook - Integrando sua aplicação às redes sociaisAndroid e Facebook - Integrando sua aplicação às redes sociais
Android e Facebook - Integrando sua aplicação às redes sociaisFelipe Silveira
 
Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!Comunidade Tá safo!
 
Hello world hybrid apps oportunidades com ionic framework v2
Hello world hybrid apps  oportunidades com ionic framework v2Hello world hybrid apps  oportunidades com ionic framework v2
Hello world hybrid apps oportunidades com ionic framework v2Ricardo Netto - MCP, MSP
 
Guia para o Profissional Android
Guia para o Profissional AndroidGuia para o Profissional Android
Guia para o Profissional Androidarmeniocardoso
 
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...Impacta Eventos
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012guisester
 
Desenvolvendo Windows Store Apps
Desenvolvendo Windows Store AppsDesenvolvendo Windows Store Apps
Desenvolvendo Windows Store AppsThiago Coelho
 
Desenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapDesenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapMayron Cachina
 
Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016
Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016
Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016Leonardo Turbiani
 
Windows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsWindows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsMicrosoft
 

Semelhante a Desenvolvimento iPhone em 7 passos (20)

Desenvolver aplicações C# para o iPhone
Desenvolver aplicações C# para o iPhoneDesenvolver aplicações C# para o iPhone
Desenvolver aplicações C# para o iPhone
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
 
1401 - Revista - Android.pdf
1401 - Revista - Android.pdf1401 - Revista - Android.pdf
1401 - Revista - Android.pdf
 
Programando para Iphone e Ipad
Programando para Iphone e IpadProgramando para Iphone e Ipad
Programando para Iphone e Ipad
 
PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android
 
Restaurante
RestauranteRestaurante
Restaurante
 
Android e Facebook - Integrando sua aplicação às redes sociais
Android e Facebook - Integrando sua aplicação às redes sociaisAndroid e Facebook - Integrando sua aplicação às redes sociais
Android e Facebook - Integrando sua aplicação às redes sociais
 
Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!
 
Hello world hybrid apps oportunidades com ionic framework v2
Hello world hybrid apps  oportunidades com ionic framework v2Hello world hybrid apps  oportunidades com ionic framework v2
Hello world hybrid apps oportunidades com ionic framework v2
 
Desenvolvimento IOS - Mobile
Desenvolvimento IOS - MobileDesenvolvimento IOS - Mobile
Desenvolvimento IOS - Mobile
 
Guia para o Profissional Android
Guia para o Profissional AndroidGuia para o Profissional Android
Guia para o Profissional Android
 
3
33
3
 
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...
Explorando o Mundo Apple, Desenvolvendo Aplicativos para IOS - Felipe Martins...
 
Palestra Android
Palestra AndroidPalestra Android
Palestra Android
 
Introdução intel XDK
Introdução intel XDKIntrodução intel XDK
Introdução intel XDK
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012
 
Desenvolvendo Windows Store Apps
Desenvolvendo Windows Store AppsDesenvolvendo Windows Store Apps
Desenvolvendo Windows Store Apps
 
Desenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapDesenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGap
 
Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016
Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016
Apresentação Meetup Faccilita Corretor Google Brasil - 01/03/2016
 
Windows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsWindows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPs
 

Desenvolvimento iPhone em 7 passos

  • 1.
  • 2. Introdução ao Desenvolvimento para iPhone Israel S. Paixão Jr. 2
  • 3. Resumo Parte I: Por que desenvolver para iPhone? Parte II: Receita para uma aplicação iPhone. Parte III: Hello World. 3
  • 4. Parte I: Por que desenvolver para iPhone? 4
  • 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
  • 16. Passo 2: Instale as Ferramentas de Desenvolvimento XCode 16
  • 17. Passo 2: Instale as Ferramentas de Desenvolvimento Interface Builder 17
  • 18. Passo 2: Instale as Ferramentas de Desenvolvimento Instruments 18
  • 19. Passo 2: Instale as Ferramentas de Desenvolvimento iPhone Simulator 19
  • 20.
  • 21. É orientada a objetos
  • 22. Invocação de métodos através de mensagens
  • 24. Gerenciamento de memória baseado em contador de referência (ver regras)
  • 25. Pode ser misturada com C++ (ver exemplo)20
  • 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
  • 32. Passo 4: Escolha os Frameworks/Engines Apropriados CocoaTouch - UIKit 27
  • 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
  • 35. Passo 4: Escolha os Frameworks/Engines Apropriados Unity3D iPhone http://unity3d.com/ 30
  • 36.
  • 37. Apenas uma aplicação em execução
  • 39. Tempo de resposta limitado
  • 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
  • 50. Parte III: Hello World Vamos ao Xcode... 40
  • 51. Mantenha-se Informado RSS Feeds Recomendados: iPhone Developer Newshttp://developer.apple.com/rss/iPhonedevnews.rssiPhone Developers Tutorials and Programming Tipshttp://feeds.feedburner.com/maniacdeviPhone Flowhttp://feeds.feedburner.com/iPhoneFlow 41
  • 52. Receita Alternativa Receita alternativa com um iPhone 42