7. Anatomia de um
Aplicativo iOS
O que um artista precisa para trabalhar
O que um programador precisa para trabalhar
Tela TintaPincel
Janela ImplementaçãoCabeçalho
7
13. Privilégios de Acesso
Acessar atributos das classes:
conta->numeroDaConta = 570;
conta->nomeDoDono = @”Pedro Cardoso”;
13
14. Tipos de
Métodos / Funções
( - ) Métodos de Instância (dos objetos)
( + ) Métodos de Classe (estáticos)
Não precisam que a classe seja instanciada
14
15. Mensagens
Métodos não são chamados. Mensagens são
enviadas a eles.
Exemplo:
[ContaBancaria verificarLimite] método estático
ContaBancaria *conta;
[conta depositar: 200.00];
[conta transferir: 120 paraContaDe: @”José da Silva”];
15
16. Mensagens
Opção: Alocar classe e chamar o método ao mesmo
tempo.
Não usar uma linha só com mais de 3 ações para não dificultar o entendimento do código.
NSString *str = [[NSString alloc] initWithString:@”Hello”];
Init funciona como método construtor.
16
26. Gerenciamento
de Memória
Garbage Colletor: Remove objetos que não
estão sendo mais utilizados liberando espaço
em memória.
Até o IOS 4.0 não havia suporte ao G.C. Então
o desenvolvedor precisava manualmente
alocar e desalocar a memória dos objetos
que deixassem de ser utilizados.
26
27. Reference Counting
R.F é um contador para cada objeto.
+1 -> Quando o objeto é criado (alloc, new)
-1 -> Quando o objeto é desalocado (release)
Quando o contador chega a 0(Zero), a memória
associada é liberada para o SO.
27
31. Dealloc
Muitas vezes os valores das propriedades ficam
retidos devido ao uso da diretiva @property. No
método dealoc liberamos a memória.
- (void) dealoc {
[self.name release];
[super dealloc];
}
O dealoc é sempre chamado quando a contagem de referências chegar a zero.
31