| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/05/2009 17:11:23
|
MrDataFlex
Virtual Machine Man
![[Avatar]](/images/avatar/a2009556541dfee38d822cf642d80b8c.jpg)
Membro desde: 23/03/2007 18:33:34
Mensagens: 566
Offline
|
Eis uma dúvida que tenho. O que é melhor? O que abre mais tua mente a abstrair? Faz-se incrementalmente? A pergunta principal é: Qual das opções você acha melhor? E Por quê?
|
SCJP 5.0 |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/05/2009 20:15:52
|
tnaires
GUJ Master
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 1634
Localização: Natal - RN
Offline
|
Prefiro mil vezes criar o modelo de classes e deixar o framework cuidar do banco de dados pra mim. Mas só tenho feito isso com meus projetos pessoais, porque no local onde trabalho atualmente precisamos iniciar a modelagem do sistema pelo modelo E/R e depois gerar as classes.
This message was edited 1 time. Last update was at 25/05/2009 20:16:51
|
Tarso Nunes Aires
Blog - http://cabritin.wordpress.com/
Delicious - http://delicious.com/tnaires
Twitter - @tnaires
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/05/2009 20:45:55
|
danielbussade
JavaEvangelist
Membro desde: 13/09/2007 09:26:21
Mensagens: 415
Localização: Itaperuna -RJ
Offline
|
Olá, tbm prefiro a abordagem de criar as classes e deixar o framework de persistencia cuidar do banco. Na verdade quando estou modelando as classes esqueço que tenha um banco de dados;
|
When you steal from one author, is called plagiarism, when you steal from many is called research.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2009 09:32:39
|
rodrigo_gomes
GUJ Master
![[Avatar]](/images/avatar/d30960ce77e83d896503d43ba249caf7.jpg)
Membro desde: 25/11/2003 15:45:21
Mensagens: 1088
Localização: São Paulo
Offline
|
Como você está (teoricamente) desenvolvendo um sistema orientado a objetos, nada mais natural do que você pensar em objetos quando estar desenvolvendo, e não em tabelas. Creio que é a maneira mais fácil.
Mas como disse o tnaires, muitas empresas 'exigem' (até mesmo os clientes) que se faça primeiro a modelagem do banco.
[]´s
|
rodrigo de paiva gomes
http://twitter.com/rod_gomes |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/05/2009 07:06:18
|
YvGa
JavaEvangelist
Membro desde: 07/03/2007 15:58:16
Mensagens: 480
Offline
|
Sempre que possivel comece pelos objetos, eles eh que vao determinar o comportamento do sistema. Depois crie um lugar para armazena-los. Eu faço o modelo do banco incrementalmente, depois dos objetos implementados e testados.
|
Paulo Borio |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/05/2009 07:19:07
|
laudenpower
JavaEvangelist
![[Avatar]](/images/avatar/090d1f9732c52fc3770cba691cff7d11.jpg)
Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline
|
Bom isso varia em função da metodologia que se estiver utilizando, por exemplo,no OPENUP o diagrama de classes vem antes de qualquer coisa na fase de elaboração, sendo que o MER vem somente depois de modelada as funcionalidades da iteração, dessa forma tanto o diagrama de classe como o MER vão evoluindo incrementalmente. Mas por outro lado se você estiver usando JDBC você não tem framework o que teoricamente não faria diferença entre um e outro sendo que no final das contas você vai mapear a classe para a tabela mesmo. Mas ainda sim prefiro primeiro pensar em classes e objetos, para só depois pensar em tabelas.
|
Enquanto cultivares teu saber, nada tens a temer!
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/05/2009 07:27:06
|
tnaires
GUJ Master
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 1634
Localização: Natal - RN
Offline
|
laudenpower wrote:Mas por outro lado se você estiver usando JDBC você não tem framework o que teoricamente não faria diferença entre um e outro sendo que no final das contas você vai mapear a classe para a tabela mesmo.
É, nesse caso não há como escapar, tem que criar o modelo físico na mão - preferencialmente após a criação do modelo de classes. Mas tendo uma ferramenta como o Hibernate, que pode criar o modelo de dados incrementalmente, podemos esquecer (quase) completamente que há um banco por trás de tudo.
|
Tarso Nunes Aires
Blog - http://cabritin.wordpress.com/
Delicious - http://delicious.com/tnaires
Twitter - @tnaires
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/05/2009 07:42:43
|
felipeguerra
GUJ Ranger
Membro desde: 26/03/2007 16:36:54
Mensagens: 960
Localização: São Paulo
Online
|
Nossa, se na realidade do mundo corporativo viesse a UML antes, meu Deus, eu estaria nas nuvens!
|
"Antes da iluminação cortar lenha, carregar água. Depois da iluminação cortar lenha, carregar água..." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/05/2009 21:59:47
|
rodrigoy
GUJ Ranger
![[Avatar]](/images/avatar/cf79ae6addba60ad018347359bd144d2.jpg)
Membro desde: 18/04/2006 01:06:28
Mensagens: 758
Localização: São Paulo
Offline
|
laudenpower wrote:Bom isso varia em função da metodologia que se estiver utilizando, por exemplo,no OPENUP o diagrama de classes vem antes de qualquer coisa na fase de elaboração...
Amigo, aonde você leu isso no OpenUP?
|
Rodrigo Yoshima
www.ASPERCOM.com.br
Próximas Turmas:
São Paulo: Scrum 28/agosto | OOAD-UML 13/setembro
Débito Técnico Blog: blog.aspercom.com.br
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/05/2009 22:18:31
|
rodrigoy
GUJ Ranger
![[Avatar]](/images/avatar/cf79ae6addba60ad018347359bd144d2.jpg)
Membro desde: 18/04/2006 01:06:28
Mensagens: 758
Localização: São Paulo
Offline
|
Já leram o beabá?
http://www.agiledata.org/essays/culturalImpedanceMismatch.html
Esse aqui é o mais importante:
http://www.agiledata.org/essays/drivingForces.html
Resumo: Projetos OO são os objetos que dirigem a construção do seu modelo de banco. Cuidado com o DBAzinhos que querem manter seus empregos. Eles ficam com aquelas masturbações mentais do tipo "ah... esse indice tá errado... ah... esse relacionamento deve ser trocado... ah... isso não tá normalizado..."... Nesses dias com Hibernate, CouchDB, Caching de Objetos e outras coisitas mais os DBAs perderam bastante "poder". Já faz uns bons 5 anos que não sinto falta deles nos meus projetos. Melhorar a performance do banco é algo que qualquer programador deve saber...
|
Rodrigo Yoshima
www.ASPERCOM.com.br
Próximas Turmas:
São Paulo: Scrum 28/agosto | OOAD-UML 13/setembro
Débito Técnico Blog: blog.aspercom.com.br
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2009 11:21:55
|
laudenpower
JavaEvangelist
![[Avatar]](/images/avatar/090d1f9732c52fc3770cba691cff7d11.jpg)
Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline
|
rodrigoy wrote:
laudenpower wrote:Bom isso varia em função da metodologia que se estiver utilizando, por exemplo,no OPENUP o diagrama de classes vem antes de qualquer coisa na fase de elaboração...
Amigo, aonde você leu isso no OpenUP?
Se tu achar um diagrama MER na fase de elaboração te dou um prêmio....
http://epf.eclipse.org/wikis/openuppt/
E mais outra não quer dizer que não pode, mas a metodologia não diz.
|
Enquanto cultivares teu saber, nada tens a temer!
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/06/2009 20:01:35
|
rodrigoy
GUJ Ranger
![[Avatar]](/images/avatar/cf79ae6addba60ad018347359bd144d2.jpg)
Membro desde: 18/04/2006 01:06:28
Mensagens: 758
Localização: São Paulo
Offline
|
Se você achar um MER em todo o OpenUp EU TE DOU UM PRÊMIO.
Pensando no Uncle Bob "Aquilo que matou o RUP vai matar o Agile também", vou blogar sobre isso também...
|
Rodrigo Yoshima
www.ASPERCOM.com.br
Próximas Turmas:
São Paulo: Scrum 28/agosto | OOAD-UML 13/setembro
Débito Técnico Blog: blog.aspercom.com.br
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/06/2009 06:39:46
|
marcosalex
GUJ Expert
![[Avatar]](/images/avatar/0a8f8b227be2d04a675082cc9d51c127.jpg)
Membro desde: 20/02/2008 12:32:59
Mensagens: 3275
Offline
|
"
This message was edited 1 time. Last update was at 24/03/2011 13:50:42
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/06/2009 20:53:37
|
YvGa
JavaEvangelist
Membro desde: 07/03/2007 15:58:16
Mensagens: 480
Offline
|
marcosalex wrote:
O maior problema que vejo é que o Hibernate nem sempre consegue gerar as querys mais otimizadas e ainda dá muito perda de performance se comparado ao SQL "puro". Relatórios complexos, por exemplo, ainda sou obrigado a criar uma query SQL otimizada.
Eu nunca tive problemas de performance com o Hibernate, a perda em relacao ao JDBC puro nao eh tao grande. Agora em relatorios mais complexos eu concordo com vc, eu uso bastante sql direto, mais pela simplicidade do sql do que pela performance, mas uso.
Pensando no Uncle Bob "Aquilo que matou o RUP vai matar o Agile também", vou blogar sobre isso também...
Essa eh uma coisa que me irrita profundamente, eu trabalho atualmente numa empresa que nao utiliza o processo agil, mas pensa que utiliza. Os gerentes leem meia duzia de artigos, fazem uma reuniao por dia pra controlar o trabalho dos desenvolvedores e dizem que isso é scrum. Pra se ter uma ideia, testes unitarios nao sao obrigatorios, o progrmador que quiser faz. Seria hilario se eu nao estivesse bem no meio disso tudo.
Nao preciso nem dizer que muitos dos conceitos pregados pelas metodologias ageis fazem a empresa inteira arregalar os olhos de espanto, como se o que eu estivesse dizendo fosse algo absurdo, de outro mundo. Teste primeiro? pra que se tem equipe de teste? Modelar no código? Isso faz eles cairem da cadeira, tamanho o espanto. E nao adianta mostrar que escrever uma classe no eclipse e fazer a reversa, por numa moldura banhada a ouro e pendurar na sala deles é mais rapido que diagramar com qualquer ferramenta.
E quando falha o projeto de quem é a culpa? Esse tal de scrum ai que nao presta.
|
Paulo Borio |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/06/2009 07:24:28
|
marcosalex
GUJ Expert
![[Avatar]](/images/avatar/0a8f8b227be2d04a675082cc9d51c127.jpg)
Membro desde: 20/02/2008 12:32:59
Mensagens: 3275
Offline
|
"
This message was edited 1 time. Last update was at 24/03/2011 13:51:49
|
|
|
 |
|
|