SlideShare uma empresa Scribd logo
Dicas de implementação e otimização mais resolução de problemas. © Adriano Santangeli 3° iPhoneDevBr no MIS – 07/11/2009
Vou começar pelos shortcuts
Para facilitar utilizaremos a tabela ao lado para identificar as teclas.
Acessando arquivos.
Shortcuts importantes.
Shortcuts importantes.
Até agora não teve NADA de interessante, certo?
Vamos a  GUERRA!
Um pouco sobre User macros.
Um pouco sobre User macros   O que são user macros ? O Xcode já vem com algumas macros que tornam a sua codificação mais produtiva.
/Developer/ Applications/ Xcode.app/ Contents/ PlugIns/ TextMacros.xctxtmacro/ Contents/ Resources/ Acessando  o diretório das macros que vem com o Xcode.
~/Library/ Application Support/ Developer/ Shared/ Xcode/ Specifications Suas macros. * Caso não exista o diretório crie agora mesmo.
Exemplo de uma Macro que vem com o Xcode.
Exemplo de uma Macro criada pelo usuário.
O accessorizer é uma ferramenta que automatiza várias tasks repetitivas para você. Accessorizer. http://www.kevincallahan.org/software/accessorizer.html Download em:
Otimização, dicas de implementação, como resolver problemas by Adriano Santangeli - 3º iphonedevbr
Uma  dica não sobre a IDE, e sim sobre o Objective-C em si: Uma dica sobre NSArray Depois retornamos a IDE NSArray VS C Array.
Mas e se eu precisar chamar um método nos meus objetos, será lento ?
Agora de volta as dicas sobre a IDE (Xcode). Agora algumas Dicas
/Developer/ Plataforms/ iPhoneOS.platform/ Developer/ Library/ Xcode/ Project Templates/ Application Editando o com.yourcompany do info.plist Dentro de cada diretório você irá encontrar o arquivo: ___PROJECTNAMEASIDENTIFIER___-Info.plist Editando este arquivo você muda automaticamente os info.plist defaults do Xcode
~/Library/ Application Support/ Developer/ Shared/ Xcode/ Project Templates User Template. A melhor coisa a fazer é copiar os templates da pasta do XCODE e editá-la.
Zumbis ... Vá em executables, clique com o botão direito em GetInfo. Na aba arguments crie e habilite o NSZombieEnabled.
Xcode abaixo de 3.0: Vá em project settings e adicione um novo user defined setting chamado: GCC_THUMB_SUPPORT e coloque nele o valor NO. Otimização: Compile for Thumb.
Xcode acima de 3.1: GCC 4.2 Code Generation e coloque nele o valor YES. Otimização: Compile for Thumb.
Trace ou Log? Na linha de código onde você deveria colocar um NSLog adicione um breakpoint. Então use CTRL+Click e vá em Edit BreakPoint na bolha azul que aparecer, ao clicar no + (MAIS) abra o menu de ações de BreakPoint.
Bibliotecas estáticas.
Bibliotecas estáticas. Apagar Adicionar
Bibliotecas estáticas. Clique no target; Agora em GetInfo; General; E por fim adicionar sua LIB.
Bibliotecas estáticas. Essa opção é necessária somente em casos que necessite de classes em Objective C.
Por fim uma referência de livros. Rapid Development: Taming Wild Software Schedules Code Complete: A Practical Handbook of Software Construction 2 Edition ARM System Developer’s Guide Designing and Optimizing System Software The Definitive Guide to GCC 2nd Edition
OBRIGADO! e-mail: adriano@maya.im twitter: @santangeli

Mais conteúdo relacionado

Destaque

Anexo 09 esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...
Anexo 09    esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...Anexo 09    esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...
Anexo 09 esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...
Luana Paim
 
Classes de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícilClasses de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícil
Guilherme Coelho
 
Análise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de RecorrênciasAnálise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de Recorrências
Delacyr Ferreira
 
Análise de Algoritmos - Problemas, instâncias, algoritmos e tempo
Análise de Algoritmos - Problemas, instâncias, algoritmos e tempoAnálise de Algoritmos - Problemas, instâncias, algoritmos e tempo
Análise de Algoritmos - Problemas, instâncias, algoritmos e tempo
Delacyr Ferreira
 
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Caminhos Mínimos: Dijkstra e Floyd-WarshallCaminhos Mínimos: Dijkstra e Floyd-Warshall
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Johnnatan Messias
 
Algoritmo de Floyd-Warshall
Algoritmo de Floyd-WarshallAlgoritmo de Floyd-Warshall
Algoritmo de Floyd-Warshall
Joao Silva
 
Programação linear Matematica
Programação linear  MatematicaProgramação linear  Matematica
Programação linear Matematica
Tiago Faisca
 
Análise de Algoritmos - Mais problemas NP-Completos
Análise de Algoritmos - Mais problemas NP-CompletosAnálise de Algoritmos - Mais problemas NP-Completos
Análise de Algoritmos - Mais problemas NP-Completos
Delacyr Ferreira
 
10 dicas para resolver problemas
10 dicas para resolver problemas 10 dicas para resolver problemas
10 dicas para resolver problemas
RAM
 
50 dicas para cálculo rápido em matematica
50 dicas para cálculo rápido em matematica50 dicas para cálculo rápido em matematica
50 dicas para cálculo rápido em matematica
Hildis Lisboa
 
3 0 cap 003
3 0 cap 0033 0 cap 003
3 0 cap 003
luisadr
 
Análise de Algoritmos - Recursividade
Análise de Algoritmos - RecursividadeAnálise de Algoritmos - Recursividade
Análise de Algoritmos - Recursividade
Delacyr Ferreira
 
Aula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem AmbientalAula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem Ambiental
Jean Leão
 
Dicas para Cálculos Rápidos vol. 2
Dicas para Cálculos Rápidos vol. 2Dicas para Cálculos Rápidos vol. 2
Dicas para Cálculos Rápidos vol. 2
Estratégia Concursos
 
Caminho Mínimo em Grafos - Algoritmo de Bellman-Ford
Caminho Mínimo em Grafos - Algoritmo de Bellman-FordCaminho Mínimo em Grafos - Algoritmo de Bellman-Ford
Caminho Mínimo em Grafos - Algoritmo de Bellman-Ford
Gabriel Albuquerque
 
Otimizações e Funções Quadráticas
Otimizações e Funções QuadráticasOtimizações e Funções Quadráticas
Otimizações e Funções Quadráticas
Vania Leitao
 
Sugestões estratégias de ensino
Sugestões estratégias de ensinoSugestões estratégias de ensino
Sugestões estratégias de ensino
Luana Paim
 
Dicas para Cálculos Mais Rápidos
Dicas para Cálculos Mais RápidosDicas para Cálculos Mais Rápidos
Dicas para Cálculos Mais Rápidos
Estratégia Concursos
 
AI - Backtracking vs Depth-First Search (DFS)
AI - Backtracking vs Depth-First Search (DFS)AI - Backtracking vs Depth-First Search (DFS)
AI - Backtracking vs Depth-First Search (DFS)
Johnnatan Messias
 
5 diagrama ferro carbono
5 diagrama ferro carbono5 diagrama ferro carbono
5 diagrama ferro carbono
Thulio Cesar
 

Destaque (20)

Anexo 09 esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...
Anexo 09    esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...Anexo 09    esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...
Anexo 09 esboco de-uma_metodologia_de_desenvolvimento_de_competencias - ve...
 
Classes de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícilClasses de problemas p, np,np completo e np-difícil
Classes de problemas p, np,np completo e np-difícil
 
Análise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de RecorrênciasAnálise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de Recorrências
 
Análise de Algoritmos - Problemas, instâncias, algoritmos e tempo
Análise de Algoritmos - Problemas, instâncias, algoritmos e tempoAnálise de Algoritmos - Problemas, instâncias, algoritmos e tempo
Análise de Algoritmos - Problemas, instâncias, algoritmos e tempo
 
Caminhos Mínimos: Dijkstra e Floyd-Warshall
Caminhos Mínimos: Dijkstra e Floyd-WarshallCaminhos Mínimos: Dijkstra e Floyd-Warshall
Caminhos Mínimos: Dijkstra e Floyd-Warshall
 
Algoritmo de Floyd-Warshall
Algoritmo de Floyd-WarshallAlgoritmo de Floyd-Warshall
Algoritmo de Floyd-Warshall
 
Programação linear Matematica
Programação linear  MatematicaProgramação linear  Matematica
Programação linear Matematica
 
Análise de Algoritmos - Mais problemas NP-Completos
Análise de Algoritmos - Mais problemas NP-CompletosAnálise de Algoritmos - Mais problemas NP-Completos
Análise de Algoritmos - Mais problemas NP-Completos
 
10 dicas para resolver problemas
10 dicas para resolver problemas 10 dicas para resolver problemas
10 dicas para resolver problemas
 
50 dicas para cálculo rápido em matematica
50 dicas para cálculo rápido em matematica50 dicas para cálculo rápido em matematica
50 dicas para cálculo rápido em matematica
 
3 0 cap 003
3 0 cap 0033 0 cap 003
3 0 cap 003
 
Análise de Algoritmos - Recursividade
Análise de Algoritmos - RecursividadeAnálise de Algoritmos - Recursividade
Análise de Algoritmos - Recursividade
 
Aula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem AmbientalAula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem Ambiental
 
Dicas para Cálculos Rápidos vol. 2
Dicas para Cálculos Rápidos vol. 2Dicas para Cálculos Rápidos vol. 2
Dicas para Cálculos Rápidos vol. 2
 
Caminho Mínimo em Grafos - Algoritmo de Bellman-Ford
Caminho Mínimo em Grafos - Algoritmo de Bellman-FordCaminho Mínimo em Grafos - Algoritmo de Bellman-Ford
Caminho Mínimo em Grafos - Algoritmo de Bellman-Ford
 
Otimizações e Funções Quadráticas
Otimizações e Funções QuadráticasOtimizações e Funções Quadráticas
Otimizações e Funções Quadráticas
 
Sugestões estratégias de ensino
Sugestões estratégias de ensinoSugestões estratégias de ensino
Sugestões estratégias de ensino
 
Dicas para Cálculos Mais Rápidos
Dicas para Cálculos Mais RápidosDicas para Cálculos Mais Rápidos
Dicas para Cálculos Mais Rápidos
 
AI - Backtracking vs Depth-First Search (DFS)
AI - Backtracking vs Depth-First Search (DFS)AI - Backtracking vs Depth-First Search (DFS)
AI - Backtracking vs Depth-First Search (DFS)
 
5 diagrama ferro carbono
5 diagrama ferro carbono5 diagrama ferro carbono
5 diagrama ferro carbono
 

Semelhante a Otimização, dicas de implementação, como resolver problemas by Adriano Santangeli - 3º iphonedevbr

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
Devmedia
 
Aula02 android hands_on
Aula02 android hands_onAula02 android hands_on
Aula02 android hands_on
Roberson Alves
 
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2
jaoozinhoqi123
 
Visualg
VisualgVisualg
Debugging node
Debugging nodeDebugging node
Debugging node
Jeniffer Nolasco
 
Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)
UNASP
 
Java 03
Java 03Java 03
Java 03
samuelthiago
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno Cotta
GPrimola
 
Supervisão
SupervisãoSupervisão
Supervisão
Gerisson Rodrigues
 
Crackeando aplicativos no android _by c0_m3nd4d0r
Crackeando aplicativos no android  _by c0_m3nd4d0rCrackeando aplicativos no android  _by c0_m3nd4d0r
Crackeando aplicativos no android _by c0_m3nd4d0r
nunes666
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular js
Cloves Moreira Junior
 
Workshop frontend
Workshop   frontendWorkshop   frontend
Workshop frontend
Leandro Mancini
 
Refactory Worshop
Refactory WorshopRefactory Worshop
Refactory Worshop
guestd37c23
 
Aula1 c++ builder
Aula1   c++ builderAula1   c++ builder
Aula1 c++ builder
Daniela Sprovieri
 
Curso de desenvolvimento de aplicações para iOS com Objective-C
Curso de desenvolvimento de aplicações para iOS com Objective-CCurso de desenvolvimento de aplicações para iOS com Objective-C
Curso de desenvolvimento de aplicações para iOS com Objective-C
Maurício Linhares
 
VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...
VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...
VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...
Dextra Sistemas / Etec Itu
 
Configuração do ambiente JEdit + Ant
Configuração do ambiente JEdit + AntConfiguração do ambiente JEdit + Ant
Configuração do ambiente JEdit + Ant
Denis L Presciliano
 
Configuração do ambiente JEdit + Ant
Configuração do ambiente JEdit + AntConfiguração do ambiente JEdit + Ant
Configuração do ambiente JEdit + Ant
Denis L Presciliano
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
Introdução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para IphoneIntrodução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para Iphone
Igenesis - Fábrica de Inovação
 

Semelhante a Otimização, dicas de implementação, como resolver problemas by Adriano Santangeli - 3º iphonedevbr (20)

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
 
Aula02 android hands_on
Aula02 android hands_onAula02 android hands_on
Aula02 android hands_on
 
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2
 
Visualg
VisualgVisualg
Visualg
 
Debugging node
Debugging nodeDebugging node
Debugging node
 
Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)
 
Java 03
Java 03Java 03
Java 03
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno Cotta
 
Supervisão
SupervisãoSupervisão
Supervisão
 
Crackeando aplicativos no android _by c0_m3nd4d0r
Crackeando aplicativos no android  _by c0_m3nd4d0rCrackeando aplicativos no android  _by c0_m3nd4d0r
Crackeando aplicativos no android _by c0_m3nd4d0r
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular js
 
Workshop frontend
Workshop   frontendWorkshop   frontend
Workshop frontend
 
Refactory Worshop
Refactory WorshopRefactory Worshop
Refactory Worshop
 
Aula1 c++ builder
Aula1   c++ builderAula1   c++ builder
Aula1 c++ builder
 
Curso de desenvolvimento de aplicações para iOS com Objective-C
Curso de desenvolvimento de aplicações para iOS com Objective-CCurso de desenvolvimento de aplicações para iOS com Objective-C
Curso de desenvolvimento de aplicações para iOS com Objective-C
 
VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...
VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...
VSSUMMIT 2023 - Como partir do zero e entregar uma API Profissional com .NET ...
 
Configuração do ambiente JEdit + Ant
Configuração do ambiente JEdit + AntConfiguração do ambiente JEdit + Ant
Configuração do ambiente JEdit + Ant
 
Configuração do ambiente JEdit + Ant
Configuração do ambiente JEdit + AntConfiguração do ambiente JEdit + Ant
Configuração do ambiente JEdit + Ant
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
Introdução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para IphoneIntrodução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para Iphone
 

Otimização, dicas de implementação, como resolver problemas by Adriano Santangeli - 3º iphonedevbr