Pessoal, sendo Java uma linguagem de programação orientada a objetos, poderia-se dizer que todo programa escrito em Java é necessariamente orientado por objetos?
Existem várias discussões sobre o fato de java ser ou não uma linguagem 100% orientada a objetos, uns dizem que o fato de haverem primitivas (int, double, float, etc) indica que java não é,
Pessoal, sendo Java uma linguagem de programação orientada a objetos, poderia-se dizer que todo programa escrito em Java é necessariamente orientado por objetos?
Como já falado por nosso amigo acima, o java não é 100% orientado a objetos pois existem tipo primitivos. Mas seria impossível você fazer um programa sem que usasse objetos em java. Então, eu acredito que todo programa em java é sim orientado objetos.
Marcio Duran:
simone.cunha:
Pessoal, sendo Java uma linguagem de programação orientada a objetos, poderia-se dizer que todo programa escrito em Java é necessariamente orientado por objetos?
Já está virando comum em vários tópicos você indicando as pessoas a entrarem nessa sua comunidade. Sinceramente, sua comunidade não tem nada a ver com a pergunta, o que acaba deixando o seu comentário um total SPAM e acredito que os moderadores deveriam tomar algum tipo de atitude sobre isso.
fantomas
Não!
flws
WendersonLP
Não necessariamente, porque não é em todos os cados que utilizaremos instância de algumas classe,
por esse motivo não faz programas somente orientado a objetos.
Mas o bom mesmo seria que todos os programas que forem fazer, serem OO porque fica mais exuto, e mais seguro.
T
thingol
simone.cunha:
Pessoal, sendo Java uma linguagem de programação orientada a objetos, poderia-se dizer que todo programa escrito em Java é necessariamente orientado por objetos?
:roll:
Este programa Java não é orientado a objetos, embora use alguns deles e defina uma classe:
De modo geral, um programa Java que só use métodos estáticos e só defina classes porque elas são necessárias para dividir o programa em diversos programas-fonte não é orientado a objetos.
Marky.Vasconcelos
É o que dizem:
“É possivel programar em Fortran em qualquer linguagem”.
O que garante seu programa ser OO não é a linguagem, e sim o programador.
dm_thiago
thingol:
simone.cunha:
Pessoal, sendo Java uma linguagem de programação orientada a objetos, poderia-se dizer que todo programa escrito em Java é necessariamente orientado por objetos?
:roll:
Este programa Java não é orientado a objetos, embora use alguns deles e defina uma classe:
De modo geral, um programa Java que só use métodos estáticos e só defina classes porque elas são necessárias para dividir o programa em diversos programas-fonte não é orientado a objetos.
thingol, nesse seu exemplo você está usando o objeto estático out da classe System, não entendi porque ele não seria orientado a objetos já que utiliza objetos. E também existe o objeto args. Talvez o meu conceito sobre o que é um programa orientado a objetos esteja errado, mas eu sempre pensei “desde que existam objetos, o programa é orientado a objetos”.
T
thingol
Não é porque um programa USA objetos que seu design é ORIENTADO A OBJETOS. Como foi mencionado antes, usar alguma coisa não quer dizer que você é orientado a alguma coisa. Só porque o papa foi à mesquita e à sinagoga não quer dizer que ele seja muçulmano ou judeu…
Se fosse assim, você poderia dizer que o seguinte programa em C, que reconhecidamente não é uma linguagem “orientada a objetos”:
também seria orientado a objetos, porque na verdade estamos fazendo o seguinte:
// A linha a seguir obtém um objeto FILE prealocado pelo C, que representa um arquivo abertoFILE*f=fopen(argv[1],"w");// A seguir, chamamos o método "fprintf" sobre esse objeto ffprintf(f,"Hello, world!\n");// e por último chamamos o método "fclose". fclose(f);
Marky.Vasconcelos
out é uma variavel estatica, apenas o método println está sendo chamado no exemplo. args são só os argumentos não significa que seja OO.
R
rananfu
dm_thiago:
Como já falado por nosso amigo acima, o java não é 100% orientado a objetos pois existem tipo primitivos. Mas seria impossível você fazer um programa sem que usasse objetos em java. Então, eu acredito que todo programa em java é sim orientado objetos.
Marcio Duran:
simone.cunha:
Pessoal, sendo Java uma linguagem de programação orientada a objetos, poderia-se dizer que todo programa escrito em Java é necessariamente orientado por objetos?
Já está virando comum em vários tópicos você indicando as pessoas a entrarem nessa sua comunidade. Sinceramente, sua comunidade não tem nada a ver com a pergunta, o que acaba deixando o seu comentário um total SPAM e acredito que os moderadores deveriam tomar algum tipo de atitude sobre isso.
Concordo plenamente
dm_thiago
out é uma variável estática que aponta para um objeto PrintStream, e args são os argumentos sim, colocados em um array de strings (conhecidamente um objeto). Desculpe, não entendi seu ponto de vista.
Só para ver se eu entendi o que você quer dizer: um programa seria considerado orientado a objetos somente quando eu separasse a sua lógica em objetos? E se eu usar as apis da linguagem, que são orientadas a objetos, isso não tornaria meu programa orientado a objetos?
Meu ponto de vista é: se tem qualquer resquício de orientação a objetos compondo o programa, o programa é orientado a objetos.
Existe algum lugar que defina “programa orientado a objetos”?
Marky.Vasconcelos
O que eu quiz dizer é… não é por que o programa recebe argumentos que é orientado a objetos. C tem métodos… passam parametros e não é nada OO.
Afinal de contas… o que é OO pra voce? Se falarem que Java é OO então significa que isso é OO?
dm_thiago
Mark_Ameba:
O que eu quiz dizer é… não é por que o programa recebe argumentos que é orientado a objetos. C tem métodos… passam parametros e não é nada OO.
Afinal de contas… o que é OO pra voce? Se falarem que Java é OO então significa que isso é OO?
Mas eu não estou falando simplesmente de argumentos, eu estou falando de objetos. String[] é um objeto. OO seria representar a realidade através de objetos. E é isso que está sendo feito. E pra você, o que seria OO?
T
thingol
Sim senhor, um programa é orientado a objetos se seus dados e lógica são estruturados como objetos.
Uma famosa biblioteca C, chamada OpenSSL (http://www.openssl.org ) , pode ser considerada orientada a objetos, mesmo que ela não tenha sido escrita em uma linguagem orientada a objetos, porque seu design é orientado a objetos, e ela tem de simular herança e polimorfismo com os recursos do C (a saber, macros e ponteiros de função).
Um programa “hello, world” em Java, que só use métodos estáticos, arrays, variáveis e que use classes apenas para separar os métodos (por exemplo, um programa que fizesse cálculo numérico e só usasse os métodos de java.lang.Math e o objeto System.out), não é nem um pouco orientado a objeto, embora use alguns objetos predefinidos do Java.
É o que eu disse: o papa não deixa de ser católico (ou seja, não-orientado a objetos) só porque ele visitou uma sinagoga ou uma mesquita (ou seja, usou algum objeto).
dm_thiago
thingol:
dm_thiago:
S?para ver se eu entendi o que voc?quer dizer: um programa seria considerado orientado a objetos somente quando eu separasse a sua l?ica em objetos? E se eu usar as apis da linguagem, que s? orientadas a objetos, isso n? tornaria meu programa orientado a objetos?
Sim senhor, um programa ?orientado a objetos se seus dados e l?ica s? estruturados como objetos.
Uma famosa biblioteca C, chamada OpenSSL (http://www.openssl.org ) , pode ser considerada orientada a objetos, mesmo que ela n? tenha sido escrita em uma linguagem orientada a objetos, porque seu design ?orientado a objetos, e ela tem de simular heran? e polimorfismo com os recursos do C (a saber, macros e ponteiros de fun?o).
Um programa “hello, world” em Java, que s?use m?odos est?icos, arrays, vari?eis e que use classes apenas para separar os m?odos (por exemplo, um programa que fizesse c?culo num?ico e s?usasse os m?odos de java.lang.Math e o objeto System.out), n? ?nem um pouco orientado a objeto, embora use alguns objetos predefinidos do Java.
?o que eu disse: o papa n? deixa de ser cat?ico (ou seja, n?-orientado a objetos) s?porque ele visitou uma sinagoga ou uma mesquita (ou seja, usou algum objeto).
Entendi ent?! Obrigado pela explica?o.
jgbt
A maioria dos sistemas em Java, principalmente os feitos a alguns anos não são OO.
As coisas tem melhorado, mas ainda é dificil achar um sistema realmente OO do ponto de vista do design.
Como ja foi dito, não é pq vc usa uma linguagem OO que vc esta criando sistemas OO.
Criar um sistema OO resulta do uso de “tecnicas” do paradigma que levam seu codigo a ser OO.