Outra novidade foi o Linq to Sql (motivo do post) que após utilização e testes sobre o mesmo ainda o considero muito aquém de frameworks de persistência/ORM, como o NHibernate (aliás nem o considero como uma ferramenta ORM) , basta destacar alguns pontos como :
- Suporte somente a Sql server;
- Não implementa totalmente "Persistence Ignorance", já que pra trabalharmos com lazy load, temos que utilizar tipo específicos do framework, como EntitySet e EntityRef. Desta forma teremos nossas entidades com forte acoplamento a tecnologia de persistência;
- Não é tão flexível ao trabalhar com Herança;
- Problemas de serialização, quando uma entidade possui navegabilidade dupla (tipo 1 -N por exemplo);
- Não dá suporte a Value Objects, já que trabalha como um data mapper do tipo: 1 tabela = 1 entidade;
- Linq to Sql não sabe nada da existência de ADO.Net Data Services;
E embora tenha demorado a postar sobre este assunto por motivos de tempo (tinha uma entrega pra fazer). Informo a todos os apaixonados pelo Linq to Sql que a MS não planeja fazer muito mais sobre o L2S (LINQ to SQL and LINQ to Entities Roadmap), na verdade acho q só irão apenas manter (esquecer), até pq o Entity Framework surge com força total.
Destaco o seguinte trecho do comunicado da equipe da MS:
"We’re making significant investments in the Entity Framework such that as of .NET 4.0 the Entity Framework will be our recommended data access solution for LINQ to relational scenarios. We are listening to customers regarding LINQ to SQL and will continue to evolve the product based on feedback we receive from the community as well."
(http://blogs.msdn.com/adonet/archive/2008/10/29/update-on-linq-to-sql-and-linq-to-entities-roadmap.aspx)
Pelos motivos citados acima, dá pra ver que não considero o Linq to Sql o meu "TOP ONE" para persistencia, mas a MS falha em simplesmente abandonar o projeto, pois sabemos que cliente sérios fizeram a adoção do L2S, e concordo que o Linq to Sql tinha muita beleza na sua simplicidade, precisando apenas de amadurecimento. Enfim, que venha o Entity Framework!!!
Linq? Sei não. Olha o que achei sobre o pai do Linq:
ResponderExcluir"Erik Meijer is the father of LINQ and he is known as "the Banana guy"
http://www.infoq.com/interviews/LINQ-Erik-Meijer
Um cara que usa uma camisa dessas e tem um apelido desses não deve ser confiável :)