iOS - Objetivo C

A linguagem usada no desenvolvimento do iOS é o objetivo C. É uma linguagem orientada a objetos e, portanto, seria fácil para aqueles que têm alguma experiência em linguagens de programação orientadas a objetos.

Interface e Implementação

No Objective C, o arquivo onde é feita a declaração da classe é chamado de interface file e o arquivo onde a classe é definida é chamado de implementation file.

Um arquivo de interface simples MyClass.h se pareceria com o seguinte -

@interface MyClass:NSObject { 
   // class variable declared here
}

// class properties declared here
// class methods and instance methods declared here
@end

O arquivo de implementação MyClass.m seria a seguinte -

@implementation MyClass
   // class methods defined here
@end

Criação de Objetos

A criação do objeto é feita da seguinte maneira -

MyClass  *objectName = [[MyClass alloc]init] ;

Métodos

O método é declarado no Objective C da seguinte forma -

-(returnType)methodName:(typeName) variable1 :(typeName)variable2;

Um exemplo é mostrado abaixo.

-(void)calculateAreaForRectangleWithLength:(CGfloat)length 
andBreadth:(CGfloat)breadth;

Você pode estar se perguntando o que andBreadthstring é para; na verdade, é uma string opcional, que nos ajuda a ler e entender o método facilmente, especialmente no momento da chamada. Para chamar este método na mesma classe, usamos a seguinte instrução -

[self calculateAreaForRectangleWithLength:30 andBreadth:20];

Como dito acima, o uso de andBreadth nos ajuda a entender que amplitude é 20. Self é usado para especificar que é um método de classe.

Métodos de aula

Os métodos de classe podem ser acessados ​​diretamente, sem criar objetos para a classe. Eles não têm variáveis ​​e objetos associados a eles. Um exemplo é mostrado abaixo.

+(void)simpleClassMethod;

Ele pode ser acessado usando o nome da classe (vamos assumir o nome da classe como MyClass) da seguinte forma -

[MyClass simpleClassMethod];

Métodos de Instância

Os métodos de instância podem ser acessados ​​somente após a criação de um objeto para a classe. A memória é alocada para as variáveis ​​de instância. Um exemplo de método de instância é mostrado abaixo.

-(void)simpleInstanceMethod;

Ele pode ser acessado após a criação de um objeto para a classe da seguinte maneira -

MyClass  *objectName = [[MyClass alloc]init] ;
[objectName simpleInstanceMethod];

Tipos de dados importantes no Objective C

Sr. Não. Tipo de dados
1

NSString

É usado para representar uma string.

2

CGfloat

É usado para representar um valor de ponto flutuante (flutuação normal também é permitida, mas é melhor usar CGfloat).

3

NSInteger

É usado para representar inteiros.

4

BOOL

Ele é usado para representar Boolean (YES ou NO são os tipos BOOL permitidos).

Impressão de registros

NSLog - usado para imprimir uma declaração. Ele será impresso nos logs do dispositivo e console de depuração nos modos de liberação e depuração, respectivamente. Por exemplo,

NSlog(@"");

Estruturas de controle

A maioria das estruturas de controle são as mesmas em C e C ++, exceto por alguns acréscimos, como for in statement.

Propriedades

Para uma classe externa acessar a classe, propriedades variáveis ​​são usadas. Por exemplo,

@property(nonatomic , strong) NSString *myString;

Acessando Propriedades

Você pode usar o operador ponto para acessar as propriedades. Para acessar a propriedade acima, faremos o seguinte.

self.myString = @"Test";

Você também pode usar o método set da seguinte maneira -

[self setMyString:@"Test"];

Categorias

As categorias são usadas para adicionar métodos às classes existentes. Desta forma, podemos adicionar método a classes para as quais não temos nem mesmo arquivos de implementação onde a classe real é definida. Um exemplo de categoria para nossa classe é o seguinte -

@interface MyClass(customAdditions)
- (void)sampleCategoryMethod;
@end

@implementation MyClass(categoryAdditions)

-(void)sampleCategoryMethod {
   NSLog(@"Just a test category");
}

Arrays

NSMutableArray e NSArray são as classes de array usadas no objetivo C. Como o nome sugere, o primeiro é mutável e o último é imutável. Um exemplo é mostrado abaixo.

NSMutableArray *aMutableArray = [[NSMutableArray alloc]init];
[anArray addObject:@"firstobject"];
NSArray *aImmutableArray = [[NSArray alloc]
initWithObjects:@"firstObject",nil];

Dicionário

NSMutableDictionary e NSDictionary são as classes de dicionário usadas no objetivo C. Como o nome sugere, a primeira é mutável e a última é imutável. Um exemplo é mostrado abaixo.

NSMutableDictionary *aMutableDictionary = [[NSMutableArray alloc]init];
[aMutableDictionary setObject:@"firstobject" forKey:@"aKey"];
NSDictionary*aImmutableDictionary= [[NSDictionary alloc]initWithObjects:[NSArray arrayWithObjects:
@"firstObject",nil] forKeys:[ NSArray arrayWithObjects:@"aKey"]];