Orientação a Objetos

Desculpem a ignorância, mas o que exatamente faz com que percebamos se uma linguagem é ou não orientada a objetos?

Peço isso pois sempre acreditei que fosse o fato de poder dar um “new Objeto”, mas no PHP isso também é possível, e até onde sei, PHP não é orientado, somente dá suporte à orientação… é assim mesmo ou não existe essa diferença?

Grato desde já e desculpem a ignorância novamente.

Simples, veja todas as vantagens da OO e veja um codigo que não tenha essas vantagens.

Na verdade, a questão de OO também tem a ver com o codigo que fizeram. Java é OO, mas existem programadores que fazem um lixo de codigo e sem OO…

Não sei se ajuda mais, não custa tentar… rs

Abraço !

Acho que o termo Linguagem OO e um jeito de falar q a linguagem suporta OO pois java apesar de ser OO poder ser programada utilizando 90 % de procedimentos estruturais, e como o php pode tmb ser programado 100% orientado.

[quote=bruno_cobra]Desculpem a ignorância, mas o que exatamente faz com que percebamos se uma linguagem é ou não orientada a objetos?

Peço isso pois sempre acreditei que fosse o fato de poder dar um “new Objeto”, mas no PHP isso também é possível, e até onde sei, PHP não é orientado, somente dá suporte à orientação… é assim mesmo ou não existe essa diferença?

Grato desde já e desculpem a ignorância novamente.[/quote]

O conceito de Objeto não define Orientação a Objeto. VB 6 tb tinha class e new e não era OO.
OO implica nos conceitos de herança e polimorfismo ( estático e dinamico).
Se PHP suporta isso, ele é OO. ( O PHP, a partir do 5 , eu acho, é na realidade hibrido porque suporta o paradigma OO mas tb suporta
o paradigma funcional)

Aí galera, muito obrigado pela respostas!

Bom, então podemos dizer que PHP é também orientado a objetos, se não me engano desde a versão 5 mesmo…
Pesquisando um pouco na net, encontrei algo sobre javascript (http://www.leandromerces.org/blog/2007/05/09/javascript-orientado-a-objetos/) que diz que ele dá suporte à herança através de protótipos… isso torna javascript uma linguagem orientada a objetos, então?

Abraços e obrigado pela ajuda

Não conheço muito de javascript, apenas sei que ele possui muitas características de OO.

Posso estar errado, mais Linguagens Orientadas a Objeto, podem ser difíceis de serem definidas, pois mesmo o Java não possui 100% das características, como a Herança Multipla…

Eu diria que há linguagens de programação e há paradigmas de programação. A linguagem pode suportar os paradigmas mais facilmente ou não.

Conheço gente que trabalha com Java há anos, mas nunca escreveu uma linha de código orientado a objeto.

Aliás, não é uma linha que define se é de tal paradigma ou não, é todo o projeto. Não é herança, classes, polimorfismo, encapsulamentos separados que definem um projeto OO, são todos eles juntos, e usados sabiamente.

Uma linguagem Orientada a Objetos possui abstrações e operações que lidam diretamente com objetos. “Baseada em Objetos” é um termo de marketing para linguagens não-OO que possuiam objetos built-in.

Note que você não precisa de uma linguagem OO ara programar OO.