Você está na página 1de 4

Objective-C

03/02/12 21:46

Programao Orientada Objetos


O conceito de orientao objetos na verdade algo muito simples. Diariamente utilizamos objetos para realizar tarefas, e programar OO no nada alem disso. Programadores mais antigos esto acostumados a pensar a programao separando dados e fues que seriam aplicadas neles. A prpria forma de pensar era diferente; para alguns problemas era bvia a necessidade de uma integrao maior entre os dados e as funes, e isto foi o aparecimento do objeto. Tomando um exemplo simples: supomos que voc possua uma televiso. A no ser que voc seja um milionrio ou um professor pardal, essa televiso deve ter sado de uma linha de montagem, sendo assim igual a muitos outros aparelhos do mesmo modelo. Entretanto essa a sua televiso, e ela possui um nmero de identificao (ou nmero serial) nico. No exemplo acima e agora traduzindo para o conceito de OO, sua televiso uma instncia da classe televiso. E cada vez que uma nova televiso produzida, uma nova instncia da classe televiso criada. Existem tambm certas coisas que voc pode fazer com a sua televiso, como ligar e desligar, modificar o volume e configuraes de cor, ligar o PIP, etc. As funes realizadas com
http://www.astro.iag.usp.br/~algol/computacao/ObjCtutorial.html Pgina 1 de 4

Objective-C

03/02/12 21:46

a televiso, em OO, denominam-se mtodos. Em alguns casos os mtodos so aplicados na instncia da classe, em outros eles so aplicados na classe em si. Por exemplo, ligar a televiso seria um mtodo de instncia e descobrir quantos televisores foram produzidos por um determinado fabricante seria um mtodo de classe. Quando vamos comprar um televisor em alguma loja, costumamos encontr-los agrupados junto com tocadores de DVD, por exemplo. Bem, isso no se d por acaso: televisores, assim como tocadores de DVD so eletrnicos, e com isso possuem caractersticas e funes em comum. Podemos ento pensar nestes dois aparelhos como sendo instncias de uma classe denominada eletrnicos. Entretanto no queremos instncias da classe eletrnicos, e sim das classes televiso e toca-DVD, logo dizemos que as classes televiso e toca-DVD so subclasses (ou classes filhas) da superclasse (ou classe pai) eletrnicos. Esse um conceito muito importante em orientao objetos, e denominado herana: quando criamos uma subclasse ela herda as caractersticas e mtodos de sua superclasse. Nesse caso podemos dizer que nunca iremos criar uma instncia da classe eletrnicos, logo esta denominada uma classe abstrata, ou seja, uma classe que serve apenas para ser superclasse de outras classes. Para programar em Objective-C, tal como em qualquer outra linguagem moderna, voc precisa de um editor e um compilador. Ambos esto disponveis gratuitamente em muitos dos sistemas operacionais atuais.
http://www.astro.iag.usp.br/~algol/computacao/ObjCtutorial.html Pgina 2 de 4

Objective-C

dos sistemas operacionais atuais.

03/02/12 21:46

No MacOS X, voc deve instalar os "Developer Tools" gratuitos da Apple, caso eles no estejam presentes no seu sistema. Essas ferramentas incluem dentre muitas outras coisas o compilador gcc e um ambiente de programao extremamente eficiente, denominado Xcode. No Linux voc j deve ter o gcc instalado, bem como muitos editores de texto (vi, pico, emacs). Voc tambem pode utilizar algum ambiente de programao, como o KDevelop ou ferramentas GNUStep. No Windows voc pode instalar o compilador Objective-C que acompanha o sistema MinGW (http://www.mingw.org). Para escrever os cdigos, qualquer editor de texto puro, como o Notepad, ou algum ambiente de programao deve servir. Nos trs sistemas, compilar um programa utilizando a linha de comando resume-se ao gcc (para projetos maiores costuma-se utilizar ferramentas como make, automake, etc), cujo formato geral de chamada :

gcc arquivos.m -o nome_do_programa -l objc

Os arquivos de cdigo da linguagem Objective-C possuem sufixo ".m", enquanto que os caberios possuem, como em C,
http://www.astro.iag.usp.br/~algol/computacao/ObjCtutorial.html Pgina 3 de 4

Objective-C

03/02/12 21:46

sufixo ".h". Por algum motivo alguem na FSF no parece gostar muito de uma diretriz de pr-processamento (mais sobre isso depois) do Objetive-C denominada "#import", que serve para substituir "#include" de forma a no ser necessrio escrever "#ifndef #define #endif" para no incluir o mesmo arquivo vrias vezes, e com isso as verses do gcc utilizadas em computadores com Linux e Windows do "Warnings" na hora de compilar. Para acabar com esse problema, utilize a chamada do gcc com "Wno-import". Computadores com o gcc fornecido pela Apple no sofrem desse problema. Para compilar programas utilizando o Xcode da Apple voc deve criar um novo projeto do tipo "Cocoa Application" e sobrescrever o arquivo "main.m" que ser criado automaticamente.

http://www.astro.iag.usp.br/~algol/computacao/ObjCtutorial.html

Pgina 4 de 4

Você também pode gostar