Este é o primeiro artigo da série, iremos aprender alguns conceitos iniciais e escrevermos a nossa primeira aplicação em objective-c. Vamos ao post…
Objetivos:
- Conhecer objective-c;
- Compilar primeiro programa via console;
Pré-requisitos: Mac OS instalado e conhecimento de alguma linguagem de programação.
Ferramentas de desenvolvimento instaladas (Existem outras maneiras para instalar as ferramentas; tem um artigo aqui no blog falando sobre uma das maneiras)
Configurando ambiente de desenvolvimento
Observações: Esta série de artigos tem o intuito de ensinar um pouco do que tenho aprendido em desenvolvimento para o mundo Apple. Vale a pena dizer que sou novo em desenvolvimento nestas tecnologias e escrever estes posts no blog é uma maneira de compartilhar informações com as pessoas interessadas nestas tecnologias e eventualmente aprender também. Então a regra é esta: eu ajudo vocês e conseqüentemente vocês me ajudam e assim poderemos construir uma base de conhecimento para outros que virão. Então não esperem a excelência, apenas entendam que é um esforço que estou fazendo e gostaria de dividir com outras pessoas.
Neste primeiro artigo vamos fazer o nosso primeiro programa para funcionar na plataforma Mac. Será uma aplicação em modo texto e codificada em objective-c.
O objective-c é a linguagem oficial para desenvolvimento de aplicativos no mundo Apple. É uma linguagem híbrida com características da linguagem c e da smalltalk: do C traz a velocidade e simplicidade de codificação; do Smalltalk, entre tantas características, traz a orientação a objetos como um diferencial (Caso não conheça os conceitos de OOP, recomendo que estude em paralelo). Nestes primeiros artigos iremos estudar bastante o objective-c. O framework Cocoa, será uma segunda série, assim que tivermos os conhecimentos básicos do objective-c. Vale lembrar que com o Cocoa poderemos fazer aplicativos gráficos e aplicações para rodarem nos Mac, Iphone e Ipod (Chegaremos lá).
Existem duas maneiras para programarmos em objective-c: podemos codificar nossa aplicação via console (direto na linha de comando do Mac Os) ou usando o XCode a IDE que é muito usada no desenvolvimento de aplicações o mundo Apple.
01 -Executando o terminal e acessando a console do sistema
No Windows, às vezes usamos o executar e digitamos o comando cmd para termos acesso ao DOS (Lembram dele?). Os que vieram do Linux já estão acostumados com o termo console e já sabem do que estamos falando. Para ter acesso a console é necessário fazer o seguinte:
Acessa o menu no finder, escolha a opção utilitários na janela que será aberta, selecione terminal e a linha de comando irá aparecer. As figuras abaixo mostram a seqüência a ser seguida. A linha de comandos é similar ao Linux, mas o Mac Os é da família que segue o padrãoPosix.
02 – Escrevendo a primeira aplicação objective-c
Vamos aproveitar e criar uma pasta para as nossas aplicações. Para isto use o seguinte comando. No meu caso, aparece o nome do meu computador e a minha home (pasta do usuário atual).
# Criamos a pasta curso-objectiveC
macbook-de-pierre:~ pierre$ mkdir curso-objectiveC
# Entramos na pasta criada
macbook-de-pierre:~ pierre$ cd curso-objectiveC
# Chamamos o editor de textos para escrever o nosso primeiro programa, ele se chamará start
macbook-de-pierre:curso-objectiveC pierre$vim start.m
Na linha de comando acabamos de chamar o editor de textos chamado Vim, muito conhecido dos usuários de Linux.
Você agora esta no VI; aperte a letra I e ele vai entrar em modo de inserção; digite o programa a seguir:
#import
int main (int argc, const char *argv[])
{
printf ("Primeiro programa em objective-c \n");
return 0;
}
Abaixo a tela do programa codificado no editor VIM:
Para salvarmos o nosso programa no VIM, teclamos seguido de “:” e irá aparecer um espaço e você digita “wq” que ele vai sair gravando, conforme a tela abaixo.
Com isto voltamos à linha de comandos do sistema.
# Compilando o programa, para isto execute o comando abaixo:
macbook-de-pierre:curso-objectiveC pierre$gcc start.m -o start -lobjc
Com esta operação será gerado um arquivo com o nome start, que é o nosso programa compilado.
# Executando e logo abaixo o resultado:
macbook-de-pierre:curso-objectiveC pierre$./start
Primeiro programa em objective-c
As telas a seguir mostram a sequência do que falamos.
03 – Comentando a primeira aplicação objective-c
Para os programadores em C, o código mostrado tem grande semelhança a linguagem C ANSI. Lembram que falei que o objective-c herda alguma coisas do C? Este primeiro exemplo mostrou isto. Nos próximos, apesar de sintaticamente parecidos, irão notar que o desenvolvimento é diferente porque o objective-c segue o paradigma de orientação a objetos e o C ANSI uma linguagem procedural.
01 #import
02 int main (int argc, const char *argv[])
03 {
04 printf ("Primeiro programa em objective-c \n");
05 return 0;
06 }
Linha 01
A directiva #import carrega a biblioteca stdio que permite o uso de diversas funções do objective-c. No exemplo sua inclusão foi necessária porque usamos a função printf logo abaixo que faz parte desta biblioteca. Para os programadores C Ansi, normalmente é usado o #include ao invés de #import.
Linha 02
Início da função main, ela é responsável pelo ponto de partida de um sistema em C. O parâmetro int indica que ela deve retornar um inteiro ao final de sua execução. Logo depois temos dois argumentos: o primeiro retorna o número de parâmetros passados via linha de comando e o segundo quais são eles. Por ora é isto, vamos ver mais detalhes ao longo da Série.
Linha 03
Estamos executando a função printf, que faz parte da biblioteca stdio.h importada logo acima, que imprime mensagens em um dispositivo de saída, no nosso caso a console. Ela tem várias formas de ser chamada e, neste primeiro exemplo, usamos a função como um parâmetro uma string.
E finalizando, a função return, terminamos com return 0. O zero é para informar que o programa terminou e tudo correu bem. Retornamos um inteiro, porque na linha 2 foi feito um contrato que a função iria retornar um inteiro.
Os parênteses delimitam o bloco de código.
04 – Comentando os parâmetros para compilação
gcc start.m -o start -lobjc
gcc: Indica que quero usar o compilador gcc
start.m: é o arquivo com o programa que digitamos
-o : vem de output, indica qual nome o arquivo executável vai ter
start: escolhemos start para o nome do nosso arquivo, mas poderia ser outro
-lobjc: O -l vem de library (biblioteca) -lobjc indica que usaremos as bibliotecas do objective-c para compilar o nosso programa.
Observação: Os usuários de Linux e windows poderão acompanhar esta série e testarem os programas usando o gcc no linux e o mingw no windows. Quando usarmos a Cocoa mais adiante, pelo que estudei até o momento, ela não tem port ainda para estes SO.
Bem, amigos, este exemplo foi muito simples, uma introdução simples dos conceitos iniciais de objective-c.
No próximo artigo da série, vamos compilar e executar o mesmo programa, porém usando o Xcode a IDE oficial do MacOS.
Abraços!
E me mandem um e-mail ou postem comentários.