Executando verificação de segurança...
Em resposta a O básico sobre POO
3

Sei que a ideia do post é ser um guia básico, mas de qualquer forma é uma ótima oportunidade pra esclarecer novamente uma coisa muito importante:

Não existe uma definição única, canônica e universal sobre Orientação a Objetos. A definição dada acima é uma das existentes, mas na realidade o buraco é mais embaixo.

Já respondi sobre isso aqui, e sugiro ler e seguir todos os links do texto para se aprofundar no tema (tem inclusive posts do próprio Alan Kay, que são esclarecedores).

Mas só pra resumir:

Existem várias vertentes (ou "escolas", se preferir) de Orientação a Objetos, e a mencionada no texto é apenas uma delas - provavelmente a mais popular, e talvez por isso muita gente acredita que é a única.

Alan Kay cunhou o termo "Orientação a Objetos", mas a definição dele é diferente da que está no texto. Ele definiu, entre outras coisas, que "tudo é um objeto" (o que excluiria Java como linguagem orientada a objeto, só pra ficar em um exemplo), e que eles se comunicam via troca de mensagens.

Ou seja, nada de herança e polimorfismo. Essas características se aproximam muito mais da definição de Bjarne Stroustrup, que basicamente pegou o mesmo termo e "ressignificou".

Isso não quer dizer que o post está errado. Mas é importante mencionar que orientação a objetos é bem mais complexo que isso, e mesmo a sua definição exata é controversa.

Carregando publicação patrocinada...
3

Cara, fico olhando o conhecimento de vcs (@kht e @maniero) e fico pensando, cara, quando vou chegar neste nivel... kkkkk vcs são muito TOP, e muito obrigado pela a dedicação de vcs, a cada comentario ou post, são sempre ricos de muita experiencia e conhecimento.

2

Inclusive ele diz que Lisp é mais orientada a objeto que Smalltalk. Porque a estrutura de Smalltalk não é composta de objetos, apenas os dados. É muito mais complexo do que as pessoas aprendem e principalmente porque misturam escolas.