Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

Découvrir LINQ en C#

Définir LINQ

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Vous allez voir les particularités principales de LINQ. Il s'agit notamment de la manière dont il est implémenté en .NET.
04:40

Transcription

D'abord, d'un point de vue générique, qu'est-ce que LINQ ? Bien sûr vous savez, LINQ ça veut dire « Language Intergrated Query », donc langage de requête intégré. Très bien, donc déjà langage de requête. On va pouvoir écrire des requêtes, quelque chose qui ressemble à des requêtes dans C#, dans VB.NET, j'aurais pu également mentionner F#, et écrire des requêtes ça veut dire qu'on va voir une syntaxe, une notation particulière, pour faire quelque chose qui va être une interrogation de... de quoi ? On va pouvoir manipuler des collections, tous types de collections ou de tableaux dans C# quand on parle de LINQ to Object, et puis on va pouvoir encapsuler également des DSL, c'est à dire des langages spécifiques à des domaines, DSL pour « Domain Specific Language », à des exemples. Le plus évident de DSL c'est le langage SQL qui est un langage spécifique à un domaine qui est celui des bases de données relationnelles. À ce moment-là, le DSL est un langage que vous devez apprendre et qui s'intègre en général assez mal dans un autre langage client comme C#. En théorie, enfin, en pratique pour l'implémentation mais en théorie pour l'utilisation, je vais y revenir dans une seconde, LINQ peut encapsuler tout type de DSL. Par exemple, pour du XML, l'accès à un arbre XML, pour SQL, l'accès à des requêtes SQL qui vont être générées derrière par le moteur LINQ, on pourrait dire. Donc ça peut avoirs des avantages comme ça peut avoir des inconvénients, c'est pour ça que je dis théoriquement parce que par exemple LINQ to SQL va générer des requêtes qui ne seront peut-être pas optimales et dans ce cas-là pour des raisons de performances vous auriez intérêt à apprendre le langage SQL et à l'utiliser directement. En sachant, entre parenthèse, que LINQ to SQLest déprécié en faveur de LINQ to Entity et donc de l'utilisation de Entity Framework. C'est un débat. On est ici pour parler de LINQ et on va parler spécifiquement de LINQ to Object comme ça on évite la polémique sur l'utilisation des DSL. On va apprendre une syntaxe qu'on va utiliser dans tout LINQ, si vous voulez. Donc c'est un langage intégré. On va pouvoir intégrer totalement ce langage de requête selon deux notations qui sont la notation purement, on appelle, de méthode la notation, on appelle, avec des points, le dot notation, et puis une notation plus dans une syntaxe déclarative qui va être une notation purement de requête qui va nous permettre d'exprimer des requêtes de façon vraiment déclarative. Mais on verra ça. Le fait que se soit un langage intégré, je reviens sur ce point, fait aussi que, même si on utilise une syntaxe déclarative, eh bien on va avoir les bénéfices de l'intégration de ce langage. Par exemple un typage statique, IntelliSense, pour nous aider à composer notre requête, et donc une reconnaissance pleine et entière à la compilation de ce qu'on fait et une génération d'erreur à la compilation si on s'est trompé. Ce qu'on ne peut pas avoir bien sûr quand on fait une requête SQL et qu'on l'intègre dans notre code, c'est évident. On va pouvoir donc débugger, on va pouvoir également faire par exemple des tests unitaires dans notre LINQ, débugger... les avantages d'une parfaite intégration dans notre code. Et puis finalement, ça se discute si vous voulez, mais c'est aussi une approche fonctionnelle intégrée parce que, ce qu'on va faire avec du LINQ c'est finalement envoyer des requêtes sous forme de fonctions pas vraiment techniquement de fonction, mais cette approche va nous faire faire des opérations qui sont normalement sans effet de bord et qui sont beaucoup plus propres au niveau de l'appel de blocs de code différents sans qu'il y ait un passage trop important d'information ou l'utilisation de variable globale. Donc c'est aussi une approche plus propre qui va nous faire économiser beaucoup de code parce qu'on va écrire de façon beaucoup plus simple des choses qu'on écrit normalement en faisant des boucles, en faisant des traitements très répétitifs ce qu'on appelle du boilerplate code c'est à dire du code qu'on doit refaire et refaire et refaire tout le temps alors que c'est toujours les mêmes traitements. C'est un des grands avantages de LINQ de nous faire économiser beaucoup de ligne de code pour faire des choses que LINQ sait très bien faire à notre place. Une boucle foreach, un traitement à l'intérieur de cette boucle pour chaque élément d'une collection... on va plus en faire finalement en C#. On va utiliser une requête LINQ qui va exprimer très clairement ce qu'on veut faire en une ligne par exemple au lieu d'avoir à répéter ces syntaxes à l'infini.

Découvrir LINQ en C#

Apprenez à manipuler des éléments de collection de façon déclarative avec LINQ. Étudiez la syntaxe, l’utilisation de la clause Where et la projection, triez les résultats, etc.

2h34 (31 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :19 janv. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !