04.11.08
LINQ - Você já deve ter ouvido falar disso em algum lugar, foi uma das inovações mais badaladas do .net framework 3.5 e eu tentarei mostrar um pouco do que se trata. Language Integrated Query, ou apenas LINQ, é um componente que adiciona uma linguagem declarativa capaz de realizar consultas sobre as coleções de uma forma bem semelhante ao SQL. Bem, comecei a ler o livro do LINQ In Action e resolvir fazer posts sobre as coisas que tenho aprendido. Resposta: Primeiro, vamos falar um pouco sobre delegates. O que são delegates? grosseiramente falando, são ponteiros para função e eles evoluiram bastante desde a primeira versão do .NET framework. Imaginamos que temos uma lista de nomes e gostaríamos de saber quem tem nome maior que 4 letras. C#:
E temos a nossa função de exibir os nomes que recebe um predicate, que é um método que retorna true ou false baseado na entrada, e exibe os nomes de acordo com o resultado do mesmo. C#:
Na primeira versão do .NET framework, o nosso predicate tinha que ser algo declarado C#:
E chamaríamos a função assim: C#:
Com o .NET framework 2.0, veio os anonymous method, ou seja, agora podemos omitir a declaração C#:
E agora temos a "evolução" disso, que é o LINQ, claro que o LINQ não é apenas isso, mas é importante entender esse conceito, que é o operador lambda ( => ) pois ele é a base de tudo. C#:
Qual a vantagem das Expressões lambdas ao invés dos delegates?
Exemplo de expressões Lambdas 1 - Tipo implícito com expressão 2 - Tipo implícito com bloco de código 3 - Tipo explícito com expressão 4 - Tipo explícito com bloco de código 5 - Múltiplos paramêtros 6 - Sem paramêtros e expressão 7 - Sem paramêtros e bloco de código É isso ai pessoal, nos vemos na próxima lição.Endereço de trackback para este postTrackback URL (clique direito e copie atalho/localização do link) Sem feedback para esse post aindaDeixe seu comentário |
Hot Topics
|