Language Integrated Query do C#. A Oracle tem planos de fazer algo semelhante para Java ?

Excelente pergunta.

Acho que não, eu lembro quando foi lançado no .NET foi assim um melhoria incrivel na codificação e grandes melhorias em todos os aspectos e desse momento em diante não vi esforço do mundo Java fazer isso … é uma pena.

É LINQ to SQL um framework? ou uma biblioteca? ou um recurso nativo da linguagem?

Não sei. Mas se é mais limitado que um framework então deve ser uma bosta.

É comum precisar trocar de fornecedor de banco de dados? Nunca vi.

O que vejo muito é programador querendo usar banco de dados SQL pra todo tipo de problema: busca em texto, processar json, como variável global, arquivo de configuração.

é mais comum do que você imagina…!

é um Framework ORM e não é uma bosta, só que é para ser utilizado com SqlServer somente!

Leitura:

https://msdn.microsoft.com/en-us/library/bb425822.aspx

Deve ser uma decisão de negócio. A MS não ganha nada se um monte de chumpizeiro usar a tecnologia em outros banco de dados.

Componente do próprio .NET Framework. Pra quem trabalha com modelo OO, o mapeamento via Linq to SQL é bem limitado. Última vez que vi alguem adotando isso foi por volta de 2008-09. Quem trabalha com modelo OO profissionalmente usa NHibernate ou Entity Framework. Pra mim que trabalho diretamente com SQL e sem modelagem OO, prefiro o Dapper.

Outra visão erronea … os Framework ORM principal da Microsoft funciona para qualquer banco é só ter o provider implementado em quem faz isso não é a Microsoft são as empresas que possui banco de dados. A Microsoft só disponibiliza a interfaces de implementação e hoje tudo que é em relação ao desenvolvimento .NET Microsoft no âmbito .NET CORE é Open Source

A Microsoft em seus Docs tem um artigo no ano de 2017 ou seja ano Passado:

https://docs.microsoft.com/pt-br/dotnet/framework/data/adonet/sql/linq/

Dizer que não é utilizado não é uma verdade, tanto é que o desenvolvimento nunca deixou de existir e é parte integrante, se você utilizar o Banco SQL Server é bem útil e outra coisa a Microsoft não joga fora o que ela fez, por motivo de manutenção de sistemas legados e isso é uma vantagem.

Apesar que esse não é o foco da pergunta, porque, o cara pergunta o linq no raiz que engloba inclusive esse provider de acesso ao banco.

Mas em Java que é o foco também não vejo esforço de melhoria nesse aspecto, acho o desenvolvimento de melhorias muito lento e deve ter alguma razão que eu desconheço…

Tudo bem sobre sua experiencia, mas eu nunca mais vi ninguem adotando LINQ to SQL para novos projetos. Não é questao de jogar fora, legado é legado, mas o foco e encorajamento ter passado a ser para usar e evoluir o Entity Framework, mesmo que somente para SQL Server.

1 curtida

A minha intenção maior é informar para que a pessoa possa saber que isso existe e que não é bem assim alguns pontos, realmente em C# eu sou desde da versão 1.0, então eu vivencio isso a muito tempo, um exemplo (saindo de novo do foco) é WebForms a Microsoft atualizou ele esse ano, ou seja, é o mesmo cenário deste, mas, se eu for começar em fazer algo já vou direto para MVC ASP.Net Core é uma tendencia pegar (teoricamente falando) a melhor solução e eu te entendo quando diz “não vejo mais ninguém utilizando” mas, não é porque é ruim e sim porque não evoluiu para outros bancos o seu provider é só para SQLServer e isso é visto pelos desenvolvedores a maior desvantagem … Claro quem Entity Framework ou FluentNhibernate são mais evolutivos e muito utilizados concordo nesse aspecto.

Vale lembrar que até PHP tem um camada linq em um pacote acredito que é falta de interesse mesmo!

Existir existe, mas quem evoluiu de verdade foi o Entity Framework, a exemplo do code-first.

Concordo sobre a falta de interesse no caso do Java, um dos motivos acredito ter sido o atraso da linguagem. Só agora na altura que está o campeonato investir nisso fica difícil, embora não impossível.