Se alguém tiver algum material de confiança (livro, artigo etc) sobre
essa questão, por favor, avisa aê... fóruns e blogs (sem referências)
não valem...
[]s
-
Maurício Linhares
http://codeshooter.wordpress.com/ | http://twitter.com/mauriciojr
2010/2/23 Rommel <ericr...@gmail.com>:
> --
> =================================================================
> Site do grupo: http://pbjug.org/
>
> Para sair da lista, envie um e-mail para pbjug-un...@groups.google.com
> =================================================================
Note: All enums implicitly extendjava.lang.Enum. Since Java does not support multiple inheritance, an enum cannot extend anything else. http://java.sun.com/docs/books/tutorial/java/javaOO/enum.html
-
Maurício Linhares
http://codeshooter.wordpress.com/ | http://twitter.com/mauriciojr
2010/2/23 Jonhnny Weslley <jonhnny...@jonhnnyweslley.net>:
--
=================================================================
Site do grupo: http://pbjug.org/
Para sair da lista, envie um e-mail para pbjug-un...@groups.google.com
=================================================================
Estou modelando uns agentes inteligentes. Nessa modelagem, há algumas
taxonomias específicas (como a de Russel&Norvig e Wooldridge), a
exemplo, Agente Reflexo (Reativo), Agente Baseado em Modelos (ABM),
Agente Baseado em Objetivos (ABO) e por aí vai. Esses agentes são
generalizações entre si, ou seja, o ABM é um Reativo com algumas
outras características. O ABO é um ABM com outras características e
por aí vai também. Agora veja a situação em que o agente mais simples,
o Reativo, possui alguns estados básicos, como Criado, Parado e
Rodando. Isso está numa enumeration. O ABM, por sua vez, terá os
mesmos estados do Reativo e alguns outros. O ABO segue o mesmo
raciocínio.
Da forma como está sendo modelado, usando uma abordagem ortogonal e
baseada em componentes, eu não preciso herdar todos os componentes do
modelo mais básico e sim, apenas os componentes dos quais preciso para
o modelo superior e apenas daquela visão específica. Assim, se não
puder fazer herança de enumeration, terei que toda vez reescrever os
mesmos dados, já escritos acima, o que seria evitado com uma herança,
já que bastaria adicionar os novos estados.
Desta forma, utilizando essa abordagem ortográfica e baseada em
componentes, não faz sentido ter herança de enums? Se pensar numa
simples modelagem OO realmente não faz muito... mas como descrevi,
acredito que há sim um sentido... não achas?
[]s
On 23 fev, 15:29, Maurício Linhares <linhares.mauri...@gmail.com>
wrote:
> Não faz muito sentido haver herança de enumerations, porque elas
> normalmente são um conjunto de constantes já conhecidas, se você
> precisa de uma nova constante é só adicionar ela lá, não faz muito
> sentido ter herança de enumerations.
>
> -
> Maurício Linhareshttp://codeshooter.wordpress.com/|http://twitter.com/mauriciojr
>
> 2010/2/23 Rommel <ericrom...@gmail.com>:
>
> > Olhando no metamodelo da UML, não encontrei nenhum restrição, porém,
> > consultando fóruns por aí, vi alguns dizerem que não é possível. As
> > ferramentas de UML que mexi aqui, permitem fazer a herança... e aí?
> > Pode ou não pode?
> > Ou na UML pode mas em OO não pode? Pq?
>
> > Se alguém tiver algum material de confiança (livro, artigo etc) sobre
> > essa questão, por favor, avisa aê... fóruns e blogs (sem referências)
> > não valem...
>
> > []s
>
> > --
> > =================================================================
> > Site do grupo:http://pbjug.org/
>
> > Para sair da lista, envie um e-mail para pbjug-unsubscr...@groups.google.com
> > =================================================================
[]s
On 23 fev, 15:50, Andrea <websapi...@gmail.com> wrote:
> Olá a todos
>
> *Falando em Java especificamente*, é tecnicamente impossível, ainda que
> alguma ferramenta UML permita desenhar diagramas assim:
>
> *Note:* *All* enums implicitly extend java.lang.Enum. Since Java does not
> support multiple inheritance, *an enum cannot extend anything else. *http://java.sun.com/docs/books/tutorial/java/javaOO/enum.html
>
> Uma enum filha de outra enum não poderia existir neste caso. Concordo tb com
> o Maurício, não faz mto sentido.
> <http://java.sun.com/docs/books/tutorial/java/javaOO/enum.html>
>
> Atenciosamente,
> Andrea Fernanda
>
> Em 23 de fevereiro de 2010 15:29, Maurício Linhares <
> linhares.mauri...@gmail.com> escreveu:
>
> > Não faz muito sentido haver herança de enumerations, porque elas
> > normalmente são um conjunto de constantes já conhecidas, se você
> > precisa de uma nova constante é só adicionar ela lá, não faz muito
> > sentido ter herança de enumerations.
>
> > -
> > Maurício Linhares
> >http://codeshooter.wordpress.com/|http://twitter.com/mauriciojr
>
> > 2010/2/23 Rommel <ericrom...@gmail.com>:
>
> > > Olhando no metamodelo da UML, não encontrei nenhum restrição, porém,
> > > consultando fóruns por aí, vi alguns dizerem que não é possível. As
> > > ferramentas de UML que mexi aqui, permitem fazer a herança... e aí?
> > > Pode ou não pode?
> > > Ou na UML pode mas em OO não pode? Pq?
>
> > > Se alguém tiver algum material de confiança (livro, artigo etc) sobre
> > > essa questão, por favor, avisa aê... fóruns e blogs (sem referências)
> > > não valem...
>
> > > []s
>
> > > --
> > > =================================================================
> > > Site do grupo:http://pbjug.org/
>
> > > Para sair da lista, envie um e-mail para
> > pbjug-unsubscr...@groups.google.com
> > > =================================================================
>
> > --
> > =================================================================
> > Site do grupo:http://pbjug.org/
>
> > Para sair da lista, envie um e-mail para
> > pbjug-unsubscr...@groups.google.com
> > =================================================================
Olá Rommel
Supondo que vc queria codificar seu projeto em Java, eu quis adiantar que não é possível fazer herança com enums usando Java.
Falei que não fazia sentido porque a estratégia de herança seria para objetos do domínio do negócio e enumerations seriam para representar novos tipos de conjuntos de dados (como o conjunto de status dos agentes), e não para objetos de domínio em si ...
Mas compreendo perfeitamente seu raciocínio no caso descrito. Contudo, se vc tiver 10 classes de agentes em sua hierarquia, vc vai querer ter 10 enumerations também em hierarquia, é isso? Não começa a complicar ?
De fato, algumas pessoas sentem essa necessidade sua de herdar de enums, depende do ponto de vista de cada um.
Para sair da lista, envie um e-mail para pbjug-un...@groups.google.com
=================================================================
Chega inclusive a ser estranho isso ser possível em uml dado que eu
acredito que nenhuma linguagem de programação aceitaria essa
construção, em C# por exemplo o enum é um value type, equivalente
aos tipos primitivos que temos em java.
A grande questão de não fazer sentido herdar de enums é que o enum
em si representa um conjunto de valores fixos e conhecidos, assim não
haveria necessidade de se "herdar" de um enum porque não é
necessário extendê-lo, todos os possíveis valores já eståo ali
disponíveis para uso.
Enviado de meu iPhone
> Para sair da lista, envie um e-mail para pbjug-un...@groups.google.com
> =================================================================