Página 1 de 1

OOP (ou POO) - artigo básico e didático

Enviado: 16 Set 2015 17:05
por Duda 'Sgluber'
Comecei a testar o QT e percebi a necessidade de estudar OOP (Object-Oriented Programming), ou PPO (Programação Orientada a Objetos), em bom português. Como só conheço superficialmente, resolvi procurar por leitura básica e didática pra começar.

Procurei por aqui e encontrei um excelente tópico postado pelo José Quintas, entitulado Cadastro poderoso usando classe. Em seguida, pesquisei e encontrei esse artigo e gostaria de compartilhar: Programação Orientada ao Objeto: uma abordagem didática.

Um detalhe legal: o artigo cita o Clipper no texto e nas referências bibliográficas. Eu não conhecia, mas certamente foi escrito há bastante tempo.

Além de muito bom, esse artigo é encorajador. Vou citar o trecho final como incentivo à leitura:

"... as disciplinas que contemplarem esse assunto deverão tratá-lo de maneira didática e com exemplos bem esclarecedores para não cair nas mesmas armadilhas que existem na literatura, as quais não raramente exibem sofisticações desnecessárias e exemplos impossíveis de serem bem entendidos. Essa literatura "superior" faz com que os programadores considerem a metodologia de Orientação ao Objeto algo distante e só acessível para alguns "iniciados", o que não é verdade. Portanto, é fundamental que o ensino de OOP nas escolas seja direcionado para um aprendizado de maneira suave, empregando uma boa didática, de modo a fazer com que o aluno entenda perfeitamente os objetivos desta técnica, porém, sem mitificá-la, para que possa ser assimilada naturalmente e aplicada na prática."

Para quem está começando, nada melhor do que ler algo assim! Imagem

OOP (ou POO) - artigo básico e didático

Enviado: 16 Set 2015 19:55
por JoséQuintas
Interessante, até pensei em comparar classe com qualidade, pra explicar aquilo da classe ser algo abstrato, e o texto usa parte disso.

Tipo assim:
A classe é abstrata, podendo comparar com a qualidade PESADO.
Um elefante é pesado.
A classe pesado não existia até esse momento, e continua não existindo.
O que existe agora é a instância pesado, mas que faz parte do objeto elefante.

E sobre a abstração na programação:
Quando vai definir o pesado, nesse momento vai prepará-lo pra ser usado em qualquer objeto.
Nesse momento nem sabe o que é que vai ser pesado.

No final é aprender um conceito, pra depois aproveitar melhor na prática.
Leva um tempo pra acostumar com a idéia, mas vale a pena.

E tomar cuidado pra não abusar.
Se facilitou é porque tá bom, se complicou é porque tá ruim, pode estar exagerando ou fazendo errado ou usando aonde não precisava.

OOP (ou POO) - artigo básico e didático

Enviado: 17 Set 2015 20:10
por marcosgambeta
Uma outra forma de entender a questão de classe e objeto seria esta: o projeto de uma casa e a casa construida.

O projeto define como será a casa. Quais serão suas características e que recursos ela oferecerá aos seus moradores.

Mas ninguém mora num projeto de casa, mas sim numa casa real. Então, com base no projeto se constrói uma casa.

O projeto seria a classe e a casa construida seria o objeto (uma instância da classe). Do projeto original, pode-se construir uma casa, dezenas de casas, milhares de casas, etc... Mas cada casa é individual, embora se originem do mesmo projeto, assim como cada objeto derivado de uma classe é independente dos outros objetos.

Do projeto original, pode-se criar um projeto derivado, fazendo alterações nas características originais. E as casas construídas com base no novo projeto teriam características do projeto original e também do projeto derivado, prevalecendo as alterações do novo projeto.

O projeto derivado seria uma nova classe, herdando da classe original (herança).

OOP/POO fica muito mais fácil de entender quando relacionados com coisas do nosso cotidiano. Afinal, este foi um dos objetivos da sua criação.

OOP (ou POO) - artigo básico e didático

Enviado: 17 Set 2015 21:02
por marcosgambeta
E para os fãs de Jornada nas Estrelas (Star Trek), temos também o conceito de classes nas diferentes naves que aparecem nas séries e filmes.

A Enterprise, nave principal no universo de Star Trek, não foi uma única nave, mas sim várias. Cada uma delas com base em classes diferentes:

. A nave do capitão Jonathan Archer era da classe NX.

. A nave da série original, comanda pelo capitão James T Kirk, era da classe Constitution.

. A nave comandada pelo capitão Jean-Luc Picard era da classe Excelsior. Depois houve também uma da classe Sovereign.

E temos, entre outras, a nave da capitã Kathryn Janeway que era da classe Intrepid.

No caso destas naves, o termo 'classe' definia o projeto da nave (com mudanças na aparência e nos recursos entre cada classe). Uma nave de uma determinada classe seguia as características do projeto para naves daquela classe.

A nave do Picard, por exemplo, que era da classe Excelsior, tinha aquele recurso de se separar em duas. Este recurso deve ter surpreendido os fãs quando assistiram o primeiro episódio da série "Nova Geração".

Comparando com OOP/POO, as naves eram objetos independentes que ao serem criados (construidos) seguiam as especificações da classe (que não era uma nave real, mas sim uma definição de como seria uma nave construida com base naquela classe).

Parando para pensar, os conceitos de OOP/POO estão ao nosso redor, na nossa vida diária e nas coisas que usamos.

Então, aprenda OOP/POO (se ainda não o fez). Resistir é inútil.

OOP (ou POO) - artigo básico e didático

Enviado: 18 Set 2015 08:34
por Duda 'Sgluber'
Muito bom! Imagem

Quem puder contribuir indicando literatura didática ou escrevendo didaticamente a respeito de OOP/POO, por favor não deixe de fazê-lo.