Uma classe serve várias  XML
Índice dos Fóruns » Arquitetura de Sistemas
Autor Mensagem
hlegius
JavaChild
[Avatar]

Membro desde: 07/05/2006 14:29:25
Mensagens: 126
Localização: Guarulhos, SP
Offline

Certo, não sei se o título foi feliz, mas veja o cenário:

Algo bem comum: Categoria. Ela serve em alguns momentos diferentes do meu domínio. Como por exemplo, Produto e FAQ. Um Produto está associado à uma Categoria. Um "FAQ" (pergunta e resposta) está associado à uma Categoria.

O modelo "Categoria" é universal. O mesmo funcionamento para Produto e FAQ. Daí vem duas questões:
1. em qual pacote ela deve ficar ? no "catalogo" ou em "faq" ou tanto faz ?
2. ela poderá servir ambos tranquilamente ? Ou seja, apenas o Repositório terá que se virar com o ORM para buscar as informações corretas (porque lá na persistência será dois lugares diferentes, como categoria_produto e categoria_faq, por exemplo). E como poderia ser feito isto ? Penso em passar algo ao Repositorio para orientá-lo sobre qual "tipo" de categoria estamos tratando...

O que acham ?
Abraços !

http://programe.me
Zend Certified Engineer
ArchLinux - A simple lightweight Linux Distribution
[WWW] [MSN] [ICQ]
YvGa
Virtual Machine Man

Membro desde: 07/03/2007 15:58:16
Mensagens: 517
Offline

Por que nao CategoriaDeProdutos e CategoriaDeFAQs? O numero de categorias é muito alto? E por que voce quer reaproveitar a mesma em situacoes tao diferentes?

E a principal pergunta: Se é possivel no dominio por que nao é possivel no banco? E se nao é possivel no banco porque voce quer forçar no dominio?


Paulo Borio
hlegius
JavaChild
[Avatar]

Membro desde: 07/05/2006 14:29:25
Mensagens: 126
Localização: Guarulhos, SP
Offline

Opa !

Por que nao CategoriaDeProdutos e CategoriaDeFAQs?

Pois eu penso que se separar seria duplicar o código uma vez que ambas categorias fariam a mesma coisa no domínio.

O numero de categorias é muito alto? E por que voce quer reaproveitar a mesma em situacoes tao diferentes?

Não, é bem pequeno. Ambas não dariam 100 registros. Huum... são diferentes realmente, mas o funcionamento é idêntico em ambas, por isso eu pensei em deixá-las sendo uma só.

E a principal pergunta: Se é possivel no dominio por que nao é possivel no banco? E se nao é possivel no banco porque voce quer forçar no dominio?

Sendo sincero, pensei em fazê-la entender "tipo" de categoria, assim, seria única classe e única tabela lá no database. Talvez funcionasse e ficasse coerente no sistema, não sei.
Eu só "forcei" no domínio por "medo" de ter um Ctrl + C e V de classes para mudar somente lá o final na persistência. Tirando a persistência, seriam idênticas.


http://programe.me
Zend Certified Engineer
ArchLinux - A simple lightweight Linux Distribution
[WWW] [MSN] [ICQ]
 
Índice dos Fóruns » Arquitetura de Sistemas
Ir para:   
Powered by JForum 2.1.8 © JForum Team