Tutorial iOS – Aula 01 de Objective C
Hoje iremos iniciar uma seqüência de tutorias cujo o objetivo é abordar desde a linguagem Objective C, o ambiente Xcode ao desenvolvimento iOS. Então a primeira coisa que devemos aprender é a estrutura da linguagem, que atualmente é o Objective C.
Breve história da Linguagem Objective C
Também conhecida como ObjC ou Obj-C, foi criada em 1980 por Brad Cox e Tom Love na empresa Stepstone. Já em 1988 a empresa NEXT de Steve Jobs licenciou a linguagem e adotou como padrão, mais tarde quando a NEXT foi comprada pela Apple a linguagem também foi adotada.
A Estrutura da Linguagem
1. Headers e Implementação – Visão geral
Header (.h)
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
#import <Foundation/Foundation.h>
@interface Car : NSObject
{
BOOL status;
}
@property (nonatomic, retain) NSString *name;
@property (nonatomic, retain) NSString *marca;
@property (nonatomic, retain) NSNumber *potencia;
@property (nonatomic) NSUInteger carID;
– (void) turnOnOff: (BOOL) statusCar;
@end
[/sourcecode]
Implementação (.m)
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
#import "Car.h"
@implementation Car
@synthesize name;
@synthesize marca;
@synthesize potencia;
@synthesize carID;
– (void) turnOnOff: (BOOL) statusCar {
// faz alguma coisa
}
@end
[/sourcecode]
2. Alocando e iniciando um Objeto
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
Car *basicCar = [[Car alloc] init];
[/sourcecode]
3. Metodos e Funções
3.1 Metodo
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
– (void) displayInfo {
NSLog(@"Nome do carro: %@ – Marca: %@",name, marca);
}
[/sourcecode]
3.2 Função
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
– (double) somaValueA:(double) value1 withValueB: (double) value2 {
return value1+value2;
}
[/sourcecode]
4. Construtor
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
– (id) initWithName:(NSString *) nameTmp {
self = [super init];
if (self) {
name = nameTmp;
}
return self;
}
[/sourcecode]
Utilizando o Construtor:
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
Car *basicCar = [[Car alloc] initWithName:@"Gol-1.0"];
[/sourcecode]
5. Herança
Caminhão.h
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
#import <Foundation/Foundation.h>
#import "Car.h"
@interface Caminhao : Car
@property (nonatomic, retain) NSString *carga;
@property (nonatomic, retain) NSString *capacidade;
@property (nonatomic, retain) NSString *pesoMaximo;
@end
[/sourcecode]
Caminhão.m
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
#import "Caminhao.h"
@implementation Caminhao
@synthesize capacidade;
@synthesize pesoMaximo;
@synthesize carga;
– (id) initWithName:(NSString *) nameTmp {
self = [super initWithName:nameTmp];
if (self) {
capacidade = @"200";
}
return self;
}
@end
[/sourcecode]
Criando um objeto com herança:
[sourcecode language=”objc” wraplines=”false” collapse=”false”]
Caminhao *caminhao1 = [[Caminhao alloc] initWithName:@"Mercedez"];
[/sourcecode]
Na próxima aula iremos analisar algumas estruturas do Objective-C como o For, Switch e if else..
Até a próxima!