Delphi, Smalltalk, Java, C++? Qual destas não é OO?

Trabalho de Faculdade… On

E o que me impede de pegar uma linguagem OO e fazer porco?

No fim das contas tudo vira instrução de processador… Se formos entrar nesse mérito, perdemos o foco…

Eu nunca consegui entender bem essas afirmações de “só Smaltalk é realmente OO” porque quem fala nunca explica. No fim das contas se a linguagem PERMITE trabalharmos com objetos, acho que ela é OO. Se é MAIS FACIL ou não aí já é outra história, não tem essa de “a linguagem X é mais OO”, ou ela permite trabalharmos com objetos ou não permite.

E o que me impede de pegar uma linguagem OO e fazer porco?

No fim das contas tudo vira instrução de processador… Se formos entrar nesse mérito, perdemos o foco…

Eu nunca consegui entender bem essas afirmações de “só Smaltalk é realmente OO” porque quem fala nunca explica. No fim das contas se a linguagem PERMITE trabalharmos com objetos, acho que ela é OO. Se é MAIS FACIL ou não aí já é outra história, não tem essa de “a linguagem X é mais OO”, ou ela permite trabalharmos com objetos ou não permite.[/quote]

SmallTalk não possui tipos ‘não-objetos’, digamos assim… estruturas de controle como if, por exemplo, é usado com mecanismos de mensagem entre objetos, e não diretamente. E quanto a perder o foco, eu discordo: eu não fui LÁÁÁ no baixo nível, fui na máquina virtual, o que todos que trabalham com a linguagem devem saber como funciona, e a de Java é uma máquina de pilha. Se é ‘mais’ OO que a outra, acho que isso não existe. Ou É ou NÃO É, não tem meio termo. Se a linguagem permite, mas não obriga, não é OO. OO, nesse caso, fica abstraída, você é quem faz, por mais bizarro que isso possa parecer.
Enfim, trabalhar com Java sem OO é suicídio; mas que no final das contas, a estrutura da linguagem não é OO, isso é o diz a literatura da área de compiladores (e não eu, que sinceramente não tenho conhecimento para analisar fortemente o caso e opinar sobre isso). Abraços!

Não é porque a linguagem não te obriga que ela não seja OO. Ela não seria somente se não tivesse recursos para trabalharmos OO.

De onde tirastes isso? Desde quando é com base nisso que podemos definir a linguagem? Eu posso programar em Java orientado a aspectos… isso quer dizer que ela é orientada a aspectos, também?

Não. Na verdade você não pode trabalhar com aspectos em Java. Você pode simular isso. Não é nativo do Java suportar aspectos. Exemplo, aspectj:

Extension.

Não. Na verdade você não pode trabalhar com aspectos em Java. Você pode simular isso. Não é nativo do Java suportar aspectos. Exemplo, aspectj:

Extension.[/quote]

E daí que é uma extensão? Eu posso trabalhar com Aspectos, seja isto nativo ou não. É só pra te mostrar que teu argumento de ‘dar suporte’ é furado.
Como eu falei, não é ISSO que define ela ser OO ou não, entendeu? Não faz ela ser melhor ou pior, por favor, não se ofenda. Só estou tentando entender de onde vem o teu conceito. Porque se é só por ‘dar suporte’, nenhuma linguagem é mais nada, e nem deixa de ser. Sacou?

Em C não tenho polimorfismo porque não tenho herança nem sobrescrição. Então C não da suporte pra polimorfismo.

Hein? Cara, eu fiz uma metáfora… ou tu achas que eu saio por aí tentando programar usando Orientação a aspectos usando Algol?

Do fundo do meu coração: desisto.

Abraços!

Não desista assim de mim… buaaaaaaaaa… :smiley:

Não desista assim de mim… buaaaaaaaaa… :smiley: [/quote]

auiehiuaeheauiheiuaeiua

Coisas desse tipo me fazem esquecer que é segunda-feira =P

Fiquei curioso com a situação dessa thread. Vou desenterrar as fontes que usei pr’aquele trabalho, e quem sabe poste algo aqiu.

Abraços!

Programar por programar OO até em C dá pra fazer, é só ver a API do GTK.

É nem fale, depois do trampo ainda tem facul =/

Hum, como ela funciona?

Union -> pense nisso :slight_smile:

a cabeça de alguns aqui é muito dura. É preferível deixar pra lá que ficar discutindo sobre o que dá pra fazer com c ou java, ou smalltalk. É que nem time de futebol, religião e política.

Por que vocês se incomodam tanto se alguem não concorda com a opinião de vocês?

Não sei se vc percebeu, mas o intuito de um fórum não é ficar mudando opinião dos outros, mas sim gerar informação útil para que qualquer um que venha acessá-lo algum dia. Esse tipo de discussão pode parecer inútil e até é inútil quando o pessoal fica postando coisas que não agregam nada ao assunto do tópico. Por mais que as pessoas não concordem umas com as outras, elas vão postando seus argumentos e assim gerando informação útil para uma futura pesquisa, o que contribui para a disseminação da informação. Se não concorda é simples: ou você aperta Alt+F4 ou posta alguma informação útil provando que o ponto de vista do menino não está correto.

Por que vocês se incomodam tanto se alguem não concorda com a opinião de vocês?

Não sei se vc percebeu, mas o intuito de um fórum não é ficar mudando opinião dos outros, mas sim gerar informação útil para que qualquer um que venha acessá-lo algum dia. Esse tipo de discussão pode parecer inútil e até é inútil quando o pessoal fica postando coisas que não agregam nada ao assunto do tópico. Por mais que as pessoas não concordem umas com as outras, elas vão postando seus argumentos e assim gerando informação útil para uma futura pesquisa, o que contribui para a disseminação da informação. Se não concorda é simples: ou você aperta Alt+F4 ou posta alguma informação útil provando que o ponto de vista do menino não está correto.[/quote]

Concordo até o ponto “útil”, que você escreveu. Tem muita coisa que não é útil, como:

java não é OO, C++ não te obriga a programar OO, C é arcaico, lisp é isso,…e por ae vai.

O que você aprendeu com isso?

[quote=“juliocbq”]Concordo até o ponto “útil”, que você escreveu. Tem muita coisa que não é útil, como:

java não é OO, C++ não te obriga a programar OO, C é arcaico, lisp é isso,…e por ae vai.

O que você aprendeu com isso?[/quote]

Então… o problema nem é tanto falar que Java não é OO ou que C++ não te obriga a programar OO. O problema é afirmar isso e não mostrar nenhum argumento. Eu acho legal quando o cara fala, mesmo equivocado, mas ele tem algum argumento plausível pra afirmar aquilo, até porque a gente não nasce sabendo. Agora vir falar que não gosta de Java porque o simbolo é azul e vermelho não é muito construtivo.

Pelo menos a discussão me fez atentar para Lisp, que possui recursos realmente interessantes.