![]() |
|
Tantos ORMs, qual escolher? |
Responder
|
| Autor | |
alliston
DevSilver (Novo)
Registrado: 20/Maio/2008 Status Online: Offline Mensagens: 37 |
Citação de Resposta
Tópico: Tantos ORMs, qual escolher?Enviado: 24/Dezembro/2009 em 08:59 |
|
Pessoal, venho estudando um pouco de ORMs, que, para quem não sabe, são as tecnologias de acesso a dados, como Linq to SQL (não confundam com Linq puro), NHibernate, Entity Framework e outros.
E nesse estudo, vi alguns prós e contras de cada um desses ORMs. Mas queria ver a opinião de vocês: atualmente, qual o ORM mais passível de confiabilidade, performance e manutenibilidade (leia-se menos hard-code) que vocês indicariam? E para qual situação? Vamos gerar uma discussão boa, e aprender com isso :) No mais, Feliz Natal! |
|
![]() |
|
barley3066
Administrador
Registrado: 06/Dezembro/2004 Status Online: Offline Mensagens: 518 |
Citação de Resposta
Enviado: 24/Dezembro/2009 em 11:33 |
|
cara tenho 2 projetos aqui
um com entity framework e outro como Nhibernate. minha humilde opinião que o EF por ser Microsoft oferece maior integração com .NET e visual studio. Assim maior produtividade e integração com Linq O Nhibernate é algo interessante por ser bastante maduro na comunidade Java com o Hibernate. No entanto alguns trabalhos braçais me deixam um pouco desmotivado a trabalhar com o Nhibernate. Conhecendo bem de C# consiguimos construir uma arquitetura que faz toda a persistencia herdando classes abstratas, assim os metodos de CRUD definidos na classe pai são capazes de manter qualquer tabela do banco com a simples herança dessa classe pai em suas classes filhas mapeadas do banco. Prefiro trabalhar com o EF, mas sinto maior confiança com o Nhibernate. Uma dica legal é usar o mygeneration para mapear as tabelas e gerar as classes e arquivos xml no caso de utilizar o nhibernate. |
|
|
---
|
|
![]() |
|
barley3066
Administrador
Registrado: 06/Dezembro/2004 Status Online: Offline Mensagens: 518 |
Citação de Resposta
Enviado: 24/Dezembro/2009 em 11:36 |
|
a pior coisa para mim no nhibernate:
- mapeamento objeto-relacional - definir os filtros de consulta no arquivo xml a pior coisa para mim no EF - Contexto - ocorrem varios bugs, principalmente na inclusão / edição - preriro entidades burras ao que entidades inseridas em um contexto. - Um arquivo só para conter todo mapeamento objeto relacional, devido a isso é necessário quebrar a aplicação em modulos, em testes com 1000 classes era impossível de trabalhar com o mesmo arquivo edmx. |
|
|
---
|
|
![]() |
|
barley3066
Administrador
Registrado: 06/Dezembro/2004 Status Online: Offline Mensagens: 518 |
Citação de Resposta
Enviado: 24/Dezembro/2009 em 11:50 |
|
- melhor coisa no Nhibernate
comunidade e suporte, grande conteudo internet. estabilidade - melhor coisa no EF integração linq lambda expression para uso e filtros. |
|
|
---
|
|
![]() |
|
alliston
DevSilver (Novo)
Registrado: 20/Maio/2008 Status Online: Offline Mensagens: 37 |
Citação de Resposta
Enviado: 24/Dezembro/2009 em 14:09 |
|
Bom, concordo com você sobre o EF Lino.
NHibernate eu não posso opinar, tive uma experiência de 10 minutos com ele. Não gostei justamente pelo trabalho braçal, mas com essa ferramenta que você citou, pode ser que melhore. E agora coloco mais lenha na fogueira: temos também o Linq to SQL, o qual sou bastante adepto. Me adaptei bastante à esse ORM, mas justamente estou achando-o inviável por trabalhar somente com SQL Server. No modelo de mapeamento dele, até agora não notei nenhum impedimento sério, visto que trabalhei com ele em aplicações de médio porte, não grande porte. Mas ele em tese me atende, pecando somente por esse fato de exclusividade com SQL Server. |
|
![]() |
|
barley3066
Administrador
Registrado: 06/Dezembro/2004 Status Online: Offline Mensagens: 518 |
Citação de Resposta
Enviado: 24/Dezembro/2009 em 16:34 |
|
sugiro migração para EF.
Migração é natural em relação sua experiência. Mesmo uso do LINQ |
|
|
---
|
|
![]() |
|
alliston
DevSilver (Novo)
Registrado: 20/Maio/2008 Status Online: Offline Mensagens: 37 |
Citação de Resposta
Enviado: 24/Dezembro/2009 em 18:32 |
|
Sim, já estou em processo de migração.
Mas algumas coisas, como Transactions, não foram tão naturais assim. Pelo menos a primeira vista não, mas como ainda tô no início, tem muita estrada pela frente. Mas esse é o futuro! |
|
![]() |
|
Responder
|
| Ir para | Permissões do Fórum ![]() você não pode enviar novos tópicos neste fórum você não pode responder os tópicos neste fórum você não pode deletar suas mensagens neste fórum você não pode editar suas mensagens neste fórum você não pode criar enquetes nesse fórum você não pode votar enquetes nesse fórum |