Oi galera,
Podem me tirar uma dúvida simples???
Oracle é uma linguagem orientada a objetos???
Obrigada,
Laninha
Oracle é uma linguagem orientada a objetos...
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Laninha, boa tarde.
No pouco que sei, pelo menos em versões anteriores, sei que é um banco OBJETO-RELACIONAL.
Mas, fica aí o tópico pro pessoal nos ajudar.
No pouco que sei, pelo menos em versões anteriores, sei que é um banco OBJETO-RELACIONAL.
Mas, fica aí o tópico pro pessoal nos ajudar.
ORACLE é o nome do banco de dados e não é o nome de nenhuma linguagem.
O que você quer saber é se o PL\Sql é OO, a resposta é:
Sim, você pode implementar até harança no Pl.
Vlw
O que você quer saber é se o PL\Sql é OO, a resposta é:
Sim, você pode implementar até harança no Pl.
Vlw
-
- Rank: Estagiário Júnior
- Mensagens: 1
- Registrado em: Seg, 25 Ago 2008 2:34 pm
- Localização: sobral-ce
Bacharel em Ciências da Computação
Especialista em Engenharia de Software
Especialista em Engenharia de Software
Na realidade Oracle é um SGBD(Sistema de gerenciamento de banco de dados) criado e mantido pela Oracle Corporation, o oracle dá suporte a banco de dados relacionais, objeto-relacionais e xml. PL\SQL é uma extensão da linguagem padrão SQL para o SGBD Oracle e ela não é orientada a objetos e sim uma Linguagem Procedural que estende(dá funcionalidades a mais) o sql. Na realidade é o SGBD mais robusto do mercado, então você vai encontrar inúmeras outras funcionalidades. espero ter esclarecido
-
- Rank: Estagiário Pleno
- Mensagens: 5
- Registrado em: Qua, 01 Out 2008 4:30 pm
- Localização: SC
discordo do que você falou sobre o Pl/SQL não ser orientado a objetos, pode ser que não seja completamente orientado a objetos, mas realmente é possível programar orientado a objetos em Pl/SQL utilizando principalmente os TYPES... veja o exemplo
e um TYPE "filho"...
como podem ver, é possível até mesmo sobrescrever métodos, e implementar herança, e mais, como podem ver no código abaixo, é possível utilizar polimorfismo também.
alguém ainda discorda de que o Pl/SQL é orientado a objetos? hehehe
[]'s
Jhonatan da Rosa
Desenvolvedor Oracle
CREATE OR REPLACE TYPE PESSOA AS OBJECT (
NOME VARCHAR2(80),
IDADE NUMBER,
MEMBER FUNCTION GET_IDADE RETURN NUMBER,
MEMBER FUNCTION GET_NOME RETURN VARCHAR2,
MEMBER PROCEDURE SET_IDADE(IDADE IN NUMBER),
MEMBER PROCEDURE SET_NOME(NOME IN VARCHAR2),
MEMBER FUNCTION GET_TYPE RETURN VARCHAR2,
CONSTRUCTOR FUNCTION PESSOA(NOME IN VARCHAR2,IDADE IN NUMBER)RETURN SELF AS RESULT
)NOT FINAL
/
CREATE OR REPLACE TYPE BODY PESSOA IS
CONSTRUCTOR FUNCTION PESSOA(NOME IN VARCHAR2,IDADE IN NUMBER)
RETURN SELF AS RESULT IS
BEGIN
SELF.SET_IDADE(IDADE);
SELF.SET_NOME(NOME);
RETURN;
END;
MEMBER FUNCTION GET_IDADE RETURN NUMBER IS
BEGIN
RETURN SELF.IDADE;
END;
MEMBER FUNCTION GET_NOME RETURN VARCHAR2 IS
BEGIN
RETURN SELF.NOME;
END;
MEMBER PROCEDURE SET_IDADE(IDADE IN NUMBER) IS
BEGIN
SELF.IDADE := IDADE;
END;
MEMBER PROCEDURE SET_NOME(NOME IN VARCHAR2) IS
BEGIN
SELF.NOME := NOME;
END;
MEMBER FUNCTION GET_TYPE RETURN VARCHAR2 IS
BEGIN
RETURN 'PESSOA';
END;
END;
CREATE OR REPLACE TYPE PESSOA_SUB UNDER PESSOA(
NR_CPF NUMBER,
MEMBER FUNCTION GET_CPF RETURN NUMBER,
MEMBER PROCEDURE SET_CPF(NR_CPF IN NUMBER),
OVERRIDING MEMBER FUNCTION GET_NOME RETURN VARCHAR2,
OVERRIDING MEMBER FUNCTION GET_TYPE RETURN VARCHAR2,
CONSTRUCTOR FUNCTION PESSOA_SUB(NOME IN VARCHAR2,IDADE IN NUMBER,NR_CPF IN NUMBER)RETURN SELF AS RESULT
)
/
CREATE OR REPLACE TYPE BODY PESSOA_SUB IS
CONSTRUCTOR FUNCTION PESSOA_SUB(NOME IN VARCHAR2,IDADE IN NUMBER,NR_CPF IN NUMBER)
RETURN SELF AS RESULT IS
BEGIN
SELF.SET_IDADE(IDADE);
SELF.SET_NOME(NOME);
SELF.SET_CPF(NR_CPF);
RETURN;
END;
MEMBER PROCEDURE SET_CPF(NR_CPF IN NUMBER) IS
BEGIN
SELF.NR_CPF := NR_CPF;
END;
MEMBER FUNCTION GET_CPF RETURN NUMBER IS
BEGIN
RETURN SELF.NR_CPF;
END;
OVERRIDING MEMBER FUNCTION GET_NOME RETURN VARCHAR2 IS
BEGIN
RETURN 'pessoa sub '||SELF.NOME;
END;
OVERRIDING MEMBER FUNCTION GET_TYPE RETURN VARCHAR2 IS
BEGIN
RETURN 'PESSOA SUB';
END;
END;
DECLARE
obj PESSOA;
sub PESSOA_SUB;
poli PESSOA;
BEGIN
obj:= new PESSOA('Jhonatan',19);
dbms_output.put_line('Nome: '||obj.get_nome()||' idade: '||obj.get_idade());
dbms_output.put_line(obj.get_type());
obj.set_nome('Alan');
obj.set_idade(26);
dbms_output.put_line('Nome: '||obj.get_nome()||' idade: '||obj.get_idade());
dbms_output.put_line(obj.get_type());
sub:= new PESSOA_SUB('Érika',28,1234567809);
dbms_output.put_line('Nome: '||sub.get_nome()||' idade: '||sub.get_idade()||' cpf: '||sub.get_cpf());
dbms_output.put_line(sub.get_type());
poli := sub;
dbms_output.put_line('Nome: '||poli.get_nome()||' idade: '||poli.get_idade());
dbms_output.put_line(poli.get_type());
END;
[]'s
Jhonatan da Rosa
Desenvolvedor Oracle
- dr_gori
- Moderador
- Mensagens: 5024
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Legal o teu exemplo!
É como PHP, tem tudo pra programar orientado a OBJETO, mas ainda assim é opcional. (quem quiser fazer tudo procedural, pode...)
É como PHP, tem tudo pra programar orientado a OBJETO, mas ainda assim é opcional. (quem quiser fazer tudo procedural, pode...)
-
- Rank: Programador Júnior
- Mensagens: 18
- Registrado em: Ter, 04 Nov 2008 1:56 pm
- Localização: SP - são Paulo
Bem tenho que concordar que o PL/SQL não nasceu para ser orientado a objeto, mas é uma linguagem tão poderosa que pode se implementar OO sem o menor problema.
Na verdade tudo é possivel no PL/SQL
Na verdade tudo é possivel no PL/SQL
-
- Rank: Analista Sênior
- Mensagens: 153
- Registrado em: Ter, 27 Mai 2008 1:31 pm
- Localização: Rio de Janeiro - RJ
Implementar conceitos de OO não quer dizer que o PL/SQL é OO.
Java não tem todos os conceitos de OO. Se não me engano somente o SmallTalk é totalmente OO.
Só por que pode implementar alguns conceitos de OO não quer dizer que é uma linguagem OO.
Java não tem todos os conceitos de OO. Se não me engano somente o SmallTalk é totalmente OO.
Só por que pode implementar alguns conceitos de OO não quer dizer que é uma linguagem OO.
-
- Rank: Estagiário Pleno
- Mensagens: 5
- Registrado em: Qua, 01 Out 2008 4:30 pm
- Localização: SC
Na verdade... Java é Orientado a Objetos, assim como PL/SQL, C++, Objective C, Objective Pascal, e tantas outras.
A diferença entre elas e Smalltalk é:
- Smalltalk é uma linguagem OO Pura
- as que eu citei, são linguagens OO Híbridas.
[]'s
A diferença entre elas e Smalltalk é:
- Smalltalk é uma linguagem OO Pura
- as que eu citei, são linguagens OO Híbridas.
[]'s
-
- Rank: Analista Sênior
- Mensagens: 153
- Registrado em: Ter, 27 Mai 2008 1:31 pm
- Localização: Rio de Janeiro - RJ
Citado você :
"pode ser que não seja completamente orientado a objetos, mas realmente é possível programar orientado a objetos em Pl/SQL utilizando principalmente os TYPES... veja o exemplo ".
Poder programar OO não significa que seja OO. Concordo que somente SmallTalk é OO puro.
Se formos analisar do ponto de vista de linguagem híbrida, todas as linguagens serão OO.
Java é OO pois consegue prover todos os atributos que uma linguagem OO tem. Não posso falar das outras. Sei que Delphi se consegue fazer o mesmo, sendo que a maioria programa procedural, assim como PL/SQL.
Do meu ponto de vista, não coloco PL/SQL como OO, mesmo que consiga implementar alguns conceitos.
[]s
Alex Silva
"pode ser que não seja completamente orientado a objetos, mas realmente é possível programar orientado a objetos em Pl/SQL utilizando principalmente os TYPES... veja o exemplo ".
Poder programar OO não significa que seja OO. Concordo que somente SmallTalk é OO puro.
Se formos analisar do ponto de vista de linguagem híbrida, todas as linguagens serão OO.
Java é OO pois consegue prover todos os atributos que uma linguagem OO tem. Não posso falar das outras. Sei que Delphi se consegue fazer o mesmo, sendo que a maioria programa procedural, assim como PL/SQL.
Do meu ponto de vista, não coloco PL/SQL como OO, mesmo que consiga implementar alguns conceitos.
[]s
Alex Silva
-
- Rank: Estagiário Pleno
- Mensagens: 5
- Registrado em: Qua, 01 Out 2008 4:30 pm
- Localização: SC
"Os 4 pilares da Programação Orientada a Objetos
Uma linguagem é caracterizada como Orientada a Objetos quando atende a estes quatro tópicos que vou apresentar.
· Abstração
· Encapsulamento
· Herança
· Polimorfismo"
Eu tenho certeza de que PL/SQL implementa esses 4 pilares de OO!
Continuo com minha opinião, você concordando, ou não.
o texto acima, foi retirado de:
http://www.devmedia.com.br/articles/vie ... ?comp=9264
[]'s
Uma linguagem é caracterizada como Orientada a Objetos quando atende a estes quatro tópicos que vou apresentar.
· Abstração
· Encapsulamento
· Herança
· Polimorfismo"
Eu tenho certeza de que PL/SQL implementa esses 4 pilares de OO!
Continuo com minha opinião, você concordando, ou não.
o texto acima, foi retirado de:
http://www.devmedia.com.br/articles/vie ... ?comp=9264
[]'s
- dr_gori
- Moderador
- Mensagens: 5024
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Eu tive uma professora que era defensora do smalltalk pois era a unica linguagem 100% orientado ao objeto. (bem coisa de acadêmicos que não tem mais nada pra fazer além de seguir alguma filosofia maluca )
Na real, acho que se deve usar o que as linguagens tem de melhor. Se pra fazer determinada coisa é melhor se usar OO, beleza, usa... Se é alguma coisa simples, não vejo problema de procedural.
É a mesma coisa que se falava muito antigamente "GOTO" é o demônio! Quem usa GOTO é ridículo... E sinceramente, as vezes EVITAR um goto é muito mais complicado que simplesmente usar ele...
Na real, acho que se deve usar o que as linguagens tem de melhor. Se pra fazer determinada coisa é melhor se usar OO, beleza, usa... Se é alguma coisa simples, não vejo problema de procedural.
É a mesma coisa que se falava muito antigamente "GOTO" é o demônio! Quem usa GOTO é ridículo... E sinceramente, as vezes EVITAR um goto é muito mais complicado que simplesmente usar ele...
-
- Rank: Analista Sênior
- Mensagens: 153
- Registrado em: Ter, 27 Mai 2008 1:31 pm
- Localização: Rio de Janeiro - RJ
Ok,
Então a Oracle deveria mudar o nome do PL/SQL (acrónimo para a expressão inglesa Procedural Language/Structured Query Language).
Vou implmentar OO nas minhas packages.
Valeu pela informação disponibilizada.
[]s
Alex Silva
Então a Oracle deveria mudar o nome do PL/SQL (acrónimo para a expressão inglesa Procedural Language/Structured Query Language).
Vou implmentar OO nas minhas packages.
Valeu pela informação disponibilizada.
[]s
Alex Silva
- dr_gori
- Moderador
- Mensagens: 5024
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Na real, o PL/SQL existe desde os 80's. Naquele tempo não tinha nada relacionado a OO em Plsql. Foi adicionado a partir do oracle 8. Mas o nome PLSQL continuou o mesmo. (já pensou se mudam pra OOLSQL ? hehehe)
-
- Rank: Programador Sênior
- Mensagens: 51
- Registrado em: Qua, 12 Mar 2008 2:11 am
- Localização: São Bernardo - SP
Ricardo Moreno
DBA Oracle Pleno
“Só sei que nada sei, e o fato de saber isso, me coloca em vantagem sobre aqueles que acham que sabem alguma coisa.”
(Sócrates 470 a.C – 399 a.C)
DBA Oracle Pleno
“Só sei que nada sei, e o fato de saber isso, me coloca em vantagem sobre aqueles que acham que sabem alguma coisa.”
(Sócrates 470 a.C – 399 a.C)
Sim, o PL/SQL é OO
abs
abs
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 7 visitantes