Ce support s'adresse aux développeurs souhaitant maîtriser le développement d'applications .NET avec le langage Visual Basic .NET dans sa version 2015. Après un tour d'horizon de la plateforme .NET et une description des outils fournis par l'environnement Visual Studio 2015, le lecteur découvrira progressivement les éléments clés de Visual Basic et la programmation orientée objet, jusqu'à pouvoir appliquer ce concept au...
Ce support s'adresse aux développeurs souhaitant maîtriser le développement d'applications .NET avec le langage Visual Basic .NET dans sa version 2015. Après un tour d'horizon de la plateforme .NET et une description des outils fournis par l'environnement Visual Studio 2015, le lecteur découvrira progressivement les éléments clés de Visual Basic et la programmation orientée objet, jusqu'à pouvoir appliquer ce concept au développement d'applications Windows avec WPF. Une initiation aux techniques de débogage avec Visual Studio lui permettra de parfaire sa maîtrise de l'outil.
Le développement d'applications client-serveur est ensuite traité par le thème de l'accès aux données avec ADO.NET. Une description complète de LINQ au travers d'exemples concrets montre comment ses fonctionnalités simplifient la manipulation des données provenant de sources diverses. Un chapitre est ensuite consacré à la manipulation de données au format XML, permettant l'échange de données entre applications d'une manière simple et standardisée. La fin du cycle de développement est traitée à travers le déploiement d'une application avec les technologies Windows Installer puis ClickOnce.
Afin d'aider le lecteur dans son apprentissage, un aide-mémoire est fourni ; il résume l'utilité des mots-clés de Visual Basic traités dans le livre.
Les exemples présentés dans ces pages sont disponibles en téléchargement sur le site www.editions-eni.fr.
Les chapitres du livre :
Avant-propos – La plateforme .NET – Visual Studio 2015 – L'organisation d'une application – Les bases du langage – La programmation orientée objet avec VB.NET – Débogage et gestion des erreurs – Développement d'applications Windows – Accès aux données – LINQ – XML – Déploiement – Aide-mémoire
4.4.2 Opérateur de fusion de valeur nulle : If(valeur1, valeur2)
4.5 Les opérateurs logiques
4.5.1 Négation : Not
4.5.2 ET logique : And
4.5.3 OU logique : Or
4.5.4 OU exclusif : Xor
4.5.5 ET conditionnel : AndAlso
4.5.6 OU conditionnel : OrElse
4.6 Les opérateurs binaires
4.6.1 ET binaire : And
4.6.2 OU binaire : Or
4.6.3 OU exclusif : Xor
4.6.4 Négation : Not
4.6.5 Décalage vers la droite : >>
4.6.6 Décalage vers la gauche : <<
4.7 Les opérateurs de concaténation
5. Les structures de contrôle
5.1 Les structures conditionnelles
5.1.1 If ... Else ... End If
5.1.2 Select Case ... End Select
5.2 Les structures d'itération
5.2.1 For ... Next
5.2.2 While ... End While
5.2.3 Do ... Loop
5.2.4 For Each ... Next
5.2.5 Contrôler l'exécution d'une boucle
5.3 Autres structures
5.3.1 Using ... End Using
5.3.2 GoTo
5.3.3 With ... End With
6. Les fonctions
6.1 Écriture d'une fonction
6.2 Paramètres de fonction
6.3 Procédures
6.4 Surcharges
7. Les attributs
La programmation orientée objet avec VB.NET
1. Principes de la programmation orientée objet
2. Les classes et structures
2.1 Classes
2.1.1 Déclaration
2.1.2 Constructeur et destructeur
2.1.3 Classes partielles
2.2 Structures
2.3 Méthodes
2.3.1 Création
2.3.2 Méthodes partielles
2.3.3 Méthodes d'extension
2.3.4 Méthodes opérateurs
2.4 Propriétés
2.4.1 Lecture et écriture
2.4.2 Lecture seule
2.4.3 Écriture seule
2.4.4 Propriétés automatiques
2.4.5 Propriétés automatiques en lecture seule
2.4.6 Propriétés indexées
2.5 Membres statiques
2.6 Utilisation des classes et des structures
2.6.1 Instanciation
2.6.2 Initialisation
2.6.3 Types anonymes
3. Les espaces de noms
3.1 Nomenclature
3.2 Le mot-clé Imports
4. L’héritage
4.1 Mise en œuvre
4.2 Les mots-clés Me, MyBase et MyClass
4.3 Redéfinition et masquage
4.3.1 Redéfinition de méthode
4.3.2 Masquage de méthode
4.3.3 Différence entre redéfinition et masquage
4.4 Imposer ou interdire l'héritage
4.5 Transtypage
5. Les interfaces
5.1 Création
5.2 Utilisation
6. Les modules
7. Les énumérations
8. Les délégués
8.1 Création
8.2 Utilisation
8.3 Expressions lambda
9. Les événements
9.1 Déclaration et déclenchement
9.2 Gestion des événements
10. Les génériques
10.1 Classes
10.1.1 Définition d'une classe générique
10.1.2 Utilisation d'une classe générique
10.2 Interfaces
10.2.1 Définition d'une interface générique
10.2.2 Utilisation d'une interface générique
10.3 Contraintes
10.4 Méthodes
10.4.1 Définition d'une méthode générique
10.4.2 Utilisation d'une méthode générique
10.5 Événements et délégués
11. Les collections
11.1 Types existants
11.1.1 Array
11.1.2 ArrayList et List(Of T)
11.1.3 Hashtable et Dictionary(Of TKey, TValue)
11.1.4 Stack et Stack(Of T)
11.1.5 Queue et Queue(Of T)
11.2 Choisir un type de collection
12. Les objets intrinsèques
13. La programmation asynchrone
13.1 Les objets Task
13.2 Écrire du code asynchrone avec Async et Await
Débogage et gestion des erreurs
1. Les différents types d'erreurs
1.1 Erreurs de compilation
1.2 Erreurs d'exécution
2. Utilisation des exceptions
2.1 Création et déclenchement d'exceptions
2.1.1 La classe Exception
2.1.2 Le mot-clé Throw
2.1.3 Exceptions spécialisées
2.2 Gérer les exceptions
2.2.1 La structure Try ... Catch ... End Try
2.2.2 Les filtres d’exception
2.2.3 Le bloc Finally
3. Les outils fournis par Visual Studio
3.1 Contrôle de l'exécution
3.1.1 Démarrage
3.1.2 Arrêt
3.1.3 Pause
3.1.4 Reprise
3.2 Points d'arrêt
3.3 Visualiser le contenu des variables
3.3.1 DataTips
3.3.2 Fenêtres Espion
3.3.3 Fenêtre Espion express
3.3.4 Fenêtre Automatique
3.3.5 Fenêtre Variables locales
3.4 Compilation conditionnelle
Développement d'applications Windows
1. Présentation de WPF
1.1 Structure d'une application WPF
1.2 XAML
1.2.1 Templates
1.2.2 Espaces de noms
1.3 Contexte de données et binding
2. Utilisation des contrôles
2.1 Ajout de contrôles
2.2 Positionnement et dimensionnement des contrôles
2.3 Ajout d'un gestionnaire d'événements à un contrôle
3. Les principaux contrôles
3.1 Contrôles de fenêtrage
3.1.1 Window
3.1.2 NavigationWindow
3.2 Contrôles de disposition
3.2.1 Grid
3.2.2 StackPanel
3.2.3 DockPanel
3.2.4 WrapPanel
3.2.5 Canvas
3.3 Contrôles d'affichage de données
3.3.1 TextBlock
3.3.2 Label
3.3.3 Image
3.3.4 ScrollViewer
3.3.5 ItemsControl
3.3.6 StatusBar
3.3.7 ToolTip
3.4 Contrôles d'édition de texte
3.4.1 TextBox
3.4.2 RichTextBox
3.4.3 PasswordBox
3.5 Contrôles de sélection
3.5.1 RadioButton
3.5.2 CheckBox
3.5.3 ComboBox
3.5.4 ListBox
3.5.5 ListView
3.5.6 TreeView
3.5.7 Slider
3.5.8 Calendar
3.5.9 DatePicker
3.6 Contrôles d'action
3.6.1 Button
3.6.2 Menu
3.6.3 ContextMenu
3.6.4 ToolBar
4. Interactions clavier et souris
4.1 Événements clavier
4.2 Événements souris
4.3 Glisser-déposer
5. Aller plus loin avec WPF
5.1 Introduction à l'utilisation de Blend
5.1.1 L'interface
5.1.2 Ajout et modification de contrôles visuels
5.2 Introduction à MVVM
5.2.1 Présentation
5.2.2 Les interfaces INotifyPropertyChanged et INotifyCollectionChanged
5.2.3 Commandes
5.2.4 Mise en œuvre
Accès aux données
1. Principes d'une base de données
1.1 Terminologie
1.2 Le langage SQL
1.2.1 Recherche d'enregistrements
1.2.2 Ajout d'enregistrements
1.2.3 Mise à jour d'informations
1.2.4 Suppression d'informations
2. ADO.NET
2.1 Présentation
2.2 Les fournisseurs de données
2.2.1 SQL Server
2.2.2 Oracle
2.2.3 OLE DB
2.2.4 ODBC
3. Utiliser ADO.NET en mode connecté
3.1 Connexion à une base de données
3.1.1 Chaînes de connexion
3.1.2 Pool de connexions
3.1.3 Gestion de la connexion
3.2 Création et exécution de commandes
3.2.1 Définition et création d'une commande
3.2.2 Sélection de données
3.2.3 Actions sur les données
3.2.4 Paramétrage d'une commande
3.2.5 Exécution de procédures stockées
4. Utiliser ADO.NET en mode déconnecté
4.1 DataSet et DataTable
4.1.1 Description
4.1.2 Remplissage d'un DataSet à partir d'une base de données
4.1.3 Remplissage d'un DataSet sans base de données
4.2 Manipulation des données hors connexion
4.2.1 Lecture des données
4.2.2 Création de contraintes
4.2.3 Relations entre DataTables
4.2.4 État et versions d'une DataRow
4.2.5 Modification de données
4.2.6 Suppression de données
4.2.7 Valider ou annuler des modifications
4.2.8 Filtrage et tri à l'aide d'une DataView
4.2.9 Recherche de données
4.3 Valider les modifications au niveau de la base de données
4.3.1 Générer des commandes de mise à jour automatiquement
4.3.2 Commandes de mise à jour personnalisées
4.3.3 Gestion des accès concurrentiels
5. Utiliser les transactions
LINQ
1. Présentation de LINQ
2. Syntaxe
2.1 Une première requête LINQ
2.2 Les opérateurs de requête
2.2.1 Projection
2.2.2 Filtrage
2.2.3 Tri
2.2.4 Partitionnement
2.2.5 Jointure et regroupement
2.2.6 Agrégation
3. LINQ to SQL
3.1 Le mappage objet-relationnel
3.1.1 Utilisation de SQLMetal
3.1.2 Utilisation du concepteur objet/relationnel
3.2 Utilisation de LINQ to SQL
3.2.1 Récupération de données
3.2.2 Mise à jour de données
3.2.3 Gestion des conflits
XML
1. Présentation
2. Structure d'un fichier XML
2.1 Constituants d'un document XML
2.2 Document bien formé et document valide
3. Manipuler un document XML
3.1 Utilisation de DOM
3.2 Utilisation de XPath
3.3 Utilisation de LINQ to XML
Déploiement
1. Introduction
2. Windows Installer
2.1 Installation de InstallShield Limited Edition
2.2 Création d'un projet d'installation
2.2.1 Informations sur l'application
2.2.2 Prérequis d'installation
2.2.3 Fichiers de l'application
2.2.4 Raccourcis
2.2.5 Valeurs de la base de registre
2.2.6 Boîtes de dialogue
3. ClickOnce
3.1 La technologie ClickOnce
3.1.1 Principes de fonctionnement
3.1.2 Méthodes de déploiement disponibles
3.1.3 Les mises à jour d'applications avec ClickOnce
3.2 La publication ClickOnce
Aide-mémoire
Index
Sébastien PUTIER
Consultant et Formateur depuis plusieurs années, Sébastien PUTIER est aujourd'hui expert technique indépendant au sein de la société Ai3 et apporte son expertise dans la mise en oeuvre de solutions Windows, Web et mobiles avec la plateforme .Net depuis ses premières versions. Il est certifié techniquement (MCPD - MCSD) et pédagogiquement (MCT) par Microsoft.