Introdução ao Objective-C – parte 2 (classes)

Agora que você já teve o primeiro contato com a linguagem (no post anterior), vamos ver como declarar classes, métodos e propriedades.

Em Objective-C usa-se a seguinte nomenclatura para os arquivos:

  • arquivo.h – header
  • arquivo.m – arquivo que pode conter tanto código Objective-C como C

Para esse tutorial eu usarei o XCode (falarei mais sobre ele depois), mas qualquer editor de texto serve para editar os arquivos, e o GCC cria os executáveis. Neste código específico, usarei o “vi” e o compilador “gcc” apenas para exemplificar como proceder neste caso.

Vamos agora para a nossa primeira classe, vou chama-la de “MyFirstClass.m”, para este exemplo, vou digitar todo o código no mesmo arquivo:


#import <Foundation/Foundation.h>

@interface MyFirstClass : NSObject
{
   int aInt;
}

-(int) aInt;
-(void) setAInt: (int) _aInt;

-(void) print;

@end

@implementation MyFirstClass
-(void) print
{
   NSLog(@"Número informado é: %i", aInt);
}

-(void) setAInt: (int) _aInt
{
   aInt = _aInt;
}

-(int) aInt
{
   return aInt;
}
@end

int main(int argc, const char *argv[])
{
   NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
   MyFirstClass *m = [[MyFirstClass alloc] init];

   [m setAInt: 5];
   [m print];

   [m release];
   [pool drain];

   return ( 0 );
}

Para compilar um programa usando o GCC em qualquer plataforma suportada, basta digitar o seguinte:

gcc -framework Foundation MyFirstClass.m -o MyFirstClass

se não houve nenhum erro o executável “MyFirstClass” será criado, e quando executado exibirá a seguinte saída:

[code]
Alex-Chiarandas-MacBook-Pro:trainning aechiara$ ./MyFirstClass
2010-01-05 22:02:15.169 MyFirstClass[380:903] Número informado é: 5
Alex-Chiarandas-MacBook-Pro:trainning aechiara$
[/code]

Divirta-se alterando o código para exibir outras mensagens ou realizar somas por exemplo. O NSLog se comporta como o “printf” do C.

Até o próximo artigo.

4 Replies to “Introdução ao Objective-C – parte 2 (classes)”

  1. não era o escopo do artigo explicar o que é uma classe ou orientação a objetos, apenas como criá-la em Objective-C, e é isso que acontece na linha 3 do código.

  2. náo entendi o que isso faz! int main(int argc, const char *argv[])
    {
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    MyFirstClass *m = [[MyFirstClass alloc] init];

    [m setAInt: 5];
    [m print];

    [m release];
    [pool drain];

    return ( 0 );
    }
    Para compilar u

    1. Tiago esse é o código de um programa que executa na console.
      Se estiver utilizando o vi, é só fazer como o artigo diz, cria um arquivo chamado MyFirstClass.m, copia ou digita esse conteúdo lá, e salva.
      depois executa o gcc (como o artigo mostra), para ter o gcc disponível, você deve instalar o XCode, você pode baixá-lo gratuitamente no site de desenvolvimento da Apple.
      O que o código faz é o seguinte, ele cria uma nova instância da classe MyFirstClass, chama um método que set um número inteiro com 5 e depois imprime ele.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.