O documento apresenta uma introdução ao desenvolvimento de aplicativos para iOS usando a linguagem Objective-C, cobrindo tópicos como ferramentas, linguagem, frameworks, design de interface humana e preparação para a App Store.
4. • Conhecendo a linguagem Objective-C
• Explorando o framework Cocoa Touch
• Criando uma aplicação simples
• Testando no dispositivo
• Publicando na App Store
20. Extensão de ANSI C
• Convensão sintática para definição de classes
• Convensão para métodos de classe e instância
• Sintaxe para chamada de método (mensagem)
• Sintaxe para declaração de propriedades
• Convensão para tipagem estática e dinâmica
• Blocos - segmentos de código encapsulados
• Extensões da linguagem como protocolos e
categorias
21. Vantagens
• Tipagem dinâmica detemina classe em
tempo de execução.
• Ligação dinâmica determina o método a ser
chamado em tempo de execução.
• Carregamento dinâmico permite adicionar
módulos de código em tempo de execução.
22. Classes e objetos
Extensão Tipo
Header files da definição de classes,
.h
tipos, funções e constantes.
Source files da implementação em
.m
Objective-C ou C
Source files da imeplementação em C++
.mm
além de Objective-C e C
27. Métodos de classe
// nil is essentially the same as NULL
NSMutableArray *myArray = nil;
// Create a new array and assign it to the myArray variable.
myArray = [NSMutableArray array];
28. Propriedades
@property (nonatomic, copy) NSString *userName;
// Default is to simply assign value
@property BOOL flag;
// Copy the object during assignment.
@property (copy) NSString *nameObject;
// Declare only a getter method.
@property (readonly) UIView *rootView;
@synthesize flag;
@synthesize nameObject;
@synthesize rootView;
@synthesize flag, nameObject, rootView;
@synthesize nameObject=_nameObject;
46. Human Interface Principles
• Integridade estética
• Consistência
• Manipulação direta
• Feedback
• Metaphors
• Controle do usuário
47. Guidelines
• Focar na tarefa primária
• Fazer uso simples e óbvio
• Usar terminologia centrada ao usuário
• Fazer alvos do tamanho dos dedos
• Tirar ênfase das customizações
• Usar elementos de forma consistente
• Usar animação sutil para comunicação
• Pedir para gravar somente quando necessário
48. Estratégia de design
• Enumere a lista de funcionalidades
• Desenhe para o dispositivo
• Customize apropriadamente
• Prototipe e itere