O que é Orientação a Objeto - Mais uma tentativa

Em uma busca desesperada para explicar de forma simples os conceitos básicos de OO, acabei enveredando e usando exemplos nada convencionais. Espero assim que consiga alavancar a curiosidade de alguém por esta técnica de programação, mesmo que nessa tentativa nada formal e de pouco conteúdo técnico possa ser rotulado como um irresponsável.

[ Hits: 27.726 ]

Por: Franklin Anderson de Oliveira Souza em 21/02/2007 | Blog: http://fisica.ufmt.br/~franklinbr/


Introdução



Todas que enveredam pelo o mundo da programação, seja por formação profissional, necessidades acadêmicas ou ainda por puro hobby, acabam aprendendo o método mais convencional de programação, conhecida como programação procedural.

Na programação procedural temos uma seqüência de ações que um programa deve executar, escrita de acordo com a sintaxe característica de cada linguagem. Escrever um programa usando orientação a objeto se torna necessário abrir mão desse conceito que estamos tão acostumados e pensar num programa como um conjunto de "objetos".

Não tente compreender a palavra "objetos"

Às vezes físicos fazem manobras matemáticas que deixariam matemáticos de cabelo em pé. Não que os físicos estejam errados, apenas não seguiram um método por demais rigoroso, isso os torna ninjas, mais rápidos, práticos. Faremos o mesmo aqui, "computeiros" por favor torçam o nariz, pois seremos ninjas agora!!!

Tudo começa na unidade chamada classe e vamos ousar a dizer que uma classe é um objeto, então daqui em diante vamos apagar a palavra objeto do nosso post.

Uma classe é de longe algo parecido com uma função[1], é como se fosse uma função evoluída, que quando alimentada com dados te fornece muito mais informações que pode ser acessada de forma direta.

Uma classe pode ser entendida como uma célula especializada, um sistema fechado, ou ainda uma aldeia, sacou a idéia?

    Próxima página

Páginas do artigo
   1. Introdução
   2. A aldeia
   3. Uma célula
   4. Vamos programar
Outros artigos deste autor

Gnuplot - versátil ferramenta científica

Debian + Xorg + Nvidia - Um conceito visual para desktops

Gráficos elaborados com GnuPlot e Pov-Ray

Mp3Blaster - O mais completo reprodutor de MP3 modo texto

Polindo o seu Debian - KDE + Debian-Sid

Leitura recomendada

Como se comunicar com outros usuários da rede

Programação (I) - Planejamento e Otimização

Como acessar outras máquinas Linux remotamente

Instalando Metaframe Citrix Client numa estação Linux

Ovos de Páscoa no GNU/Linux

  
Comentários
[1] Comentário enviado por Ed_slacker em 21/02/2007 - 09:05h

Agora que comecei a estudar JAVA por conta própria eu tive esta dúvida do que era conceitualmente "POO".
Com seu artigo deu para ter uma excelente idéia do que vem a ser isso!
Não que seja um guia definitivo para esclarecer o assunto, mas para mim foi um ótimo ponto de partida!

Parabéns pelo artigo!!

Foi muito útil para mim e garanto que será muito útil para muitos aqui do VOL...

Amplexos.

[2] Comentário enviado por removido em 21/02/2007 - 21:46h

muito bom, esclarece bem, pois a maioria das pessoas interpretam 'orientado a objetos' como somente os objetos de uma interface grafica

[3] Comentário enviado por tralsl em 21/02/2007 - 23:04h

artigo muito bom, mas isso naum envolve todo o conceito de OO
eu tbm utilizei muito exemplo desse tipo para aprender java
embora python naum seja minha especialidade os exemplos são bons
exemplos e prática é a melhoor forma de aprender oo, naum importando a liguagem que se usa
entaum boa programação para todos :)

[4] Comentário enviado por bruinfo em 22/02/2007 - 13:39h

eu tinha uma certa dúvida sobre OO e agora eu tenho a clarezado q isso queria dizer.
Valeu

[5] Comentário enviado por tenchi em 23/02/2007 - 14:33h

Kra, muito legal o artigo, mas eu continuo não entendendo esse conceito. Você explicou muito bem, e acho que o problema é comigo msm.. rsrs
Eu "programo" em pascal, e sei que existe como "ativar" a orientação à objetos (FreePascal), mas há momentos em que eu tenho que fazer isso ({$MODE OBJFPC}). Mas eu sinceramente não entendo... Já pesquiser na Wikipedia, estou sempre lendo a documentação do FP, mas mesmo assim continuo na mesma. Dizem que uma das diferenças do c para o c++ é a orientação à objetos no segundo. Mas Eu não notei muita diferença entre as duas linguagens (Também, naum entendo muito delas).
O que eu acho que entendi é a orientação à eventos, tipo em tcl, onde as coisas acontecem quando acontece um evento (um clique do mouse, etc).
Já ouvi falar de orientação à aspectos (coisas do capeta) e até orientação à gambiarras (a verdadeira programação), mas eu simceramente fico mais confuso quando pesquiso sobre o asunto.
Uma pergunta: Eu não poderia usar um tipo de orientação numa linguagem qu eusa outro tipo? Sei lá.. rsrs

Obs: uma classe é uma função faz tudo?

ME desculpe pelas dúvidas, mas acho que se eu perguntasse isso na sessão de perguntas, ninguém responderia. Se vc conseguir esclarecer essa minha mente confusa, eu agradeceria.. ;)

nota 10 pro artigo.


( Algumas pessoas dizem que Chuck )
( Norris é um mito. Essas "algumas )
( pessoas" agora estão mortas. )


[6] Comentário enviado por removido em 26/09/2007 - 14:11h

Amigo, o artigo está muito bem escrito. Porém, o conceito aqui tratado está longe de ser POO, e sim, apenas um conceito de classe/objeto. POO envolve muitos outros conceitos sem os quais não se caracteriza esse paradigma, como por exemplo encapsulamento, herança e polimorfismo.

[7] Comentário enviado por f_Candido em 27/01/2008 - 00:47h

Muito bom o artigo, uma abordagem diferente.
Parabéns,
Abraços


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts