
- Durée
- 4 jours
- Niveau
- Avancé
- Modalités
- Présentiel / Distanciel
Description de la formation Visual Basic .NET avance
Cette formation « VB.NET avancé » vous propose de maîtriser tous les concepts fondamentaux liés au développement des applications (WPF, LINQ, Service Windows ) et à la communication (socket, service, WCF, WebServices). Après une synthèse technique sur les possibilités et les performances des différentes technologies .Net, vous apprendrez à gérer de façon efficace vos applications sous forme de services (WebServices, WCF).
Ensuite vous prendrez la mesure des possibilités de LINQ et de sa philosophie originale pour gérer les données ainsi que celle du remplaçant des Windows Forms : WPF (effets graphiques, liens avec XAML, databinding, etc.).
Vous apprendrez aussi à développer vos propres services systèmes et à utiliser la technologie des sockets ainsi que les multithread. Pour finir, vous aborderez le développement et le déploiement de services Windows.

Objectifs pédagogiques
Concrètement, à l'issue de ce cours Visual Basic .NET Perfectionnement vous aurez acquis les connaissances et compétences nécessaires pour:
- Créer et déployer un service Windows
- Gérer et optimiser vos applications
- Implémenter un WebService SOAP
- Créer une application clients/serveur
- Créer vos propres contrôles utilisateurs
Objectifs opérationnels
Maîtriser tous les concepts fondamentaux liés au développement des applications .NET
Programme
Contenu du cours
Rappels et compléments sur le Framework .Net
Synthèse sur l'architecture du Framework .NET La place de VB.NET dans l'architecture globale de .NET Les nouveautés du Framework Comparaisons de VB.NET avec d'autres langages (Java, C++, ...) Les options de compilationsCréer une bibliothèque réutilisable (dll)Performances et mémoire (code non managé) - optimisation VB.NET
Comprendre les couches basses de .NET(CLR, assembly, module, ...) Gestion du tas et de la pile par .NET (garbage-collector) Risque et intérêt d'utiliser du code « non managé » Maîtriser les types de données (transtypages) Exemples de code non managéCréer et déployer un service Windows
Différences entre un service Windows et une application Présentation de la classe ServiceBase (OnStart, OnStop, OnPause, OnRestart) Création d'un service avec Visual Studio (template Windows Service) Paramétrage du service (CanStop, CanShutdown, ...) Utilisation des threads dans la programmation de services Déploiement d'un service Windows avec Visual Studio 2012Vérification du fonctionnement du service dans le Panneau de configurationTRAVAUX PRATIQUESCréer et déployer un service windows.Observer le fonctionnement du service par le journal windows.Multithreading sous .NET
Qu'apporte le mutli-threading aux applications? Quelles différences pour le développeur ? Architecture d'un programme multi-threads principal, actif, background, ...) Fonctionnement « normal » d'un programme VB.NET (main) Cycle de vie d'un thread Spécificités techniques de la programmation multi-threads (mémoire, verrou, synchronisation, ...) Les problématiques de synchronisation et de verrous (variables de contrôle, verrous, mutex, semaphoreSlim, join abort Exemple d'une file d'attente utilisée par 3 threads (1 producteur et 2 consommateurs) Effectuer des tâches en arrière-plan grâce à un pool de threads Erreurs fréquentes avec les threadsTRAVAUX PRATIQUESMise en place de thread dans un service windowsIntroduction à la communication sous .NET
Synthèse des différents types d'échanges Technologies sous-jacentes dans .NET Présentation des différentes API (socket, web services, WCF, ...)Pourquoi utiliser les delegate dans la programmation réseau ?Services Web ASP.Net
Présentation des web services Le WSDL Méthode SOAP IIS et les sessions pour les états des web services Hébergement et publication Service Web pour requête asynchrone (AJAX)TRAVAUX PRATIQUESMise en place de webservices ASP.Net pour partager des données avec ADO.NetProgrammation réseau avec les sockets
Rappels sur le vocabulaire réseau (@IP, n°port, TCP, UDP) Quelles différences entre développer « par-dessus » TCP ou UDP ? Qu'est-ce qu'une socket pour le développeur ? Architecture général d'une application réseau multi-threads Les méthodes de la classe Sockets (listen, bind, accept, send, receive, ...) Envoi et réception de message (BeginReceive, BeginSend, Exemple de code général côté serveur et côté client Gestion du pool de connexion (multi clients) Les adaptations à faire en fonction du domaine d'applicationTRAVAUX PRATIQUESCréation d'une application clients/serveur.WPF (Windows Presentation Foundation)
Pourquoi une nouvelle API d'interface graphique avec WPF ? Ne pas mélanger présentation, traitements, et données (genèse du XAML) Spécificités du développement WPF (Visual Studio, Expression Blend, ...) Les pages et navigation au format web Contrôles de positionnement Contrôles utilisateurs Présenter et interagir avec les données (Databinding) Quelques astuces pour le bindingTRAVAUX PRATIQUESCréation d'un gestionnaire de contacts en WPFCréer ses propres contrôles utilisateurs (User Controls)
Création d'un gestionnaire d'événements pour un contrôle Les attributs d'un contrôle utilisateur (Category, Browsable, DefaultEvent, ...) Utilisation des contrôles avec un formulaire Windows Validation des entrées des utilisateurs Gestion du glisser/déposer de nos propres contrôles Créer des contrôles dynamiquement Ajouter de fonctionnalités aux contrôles Ajout de prise en charge Design-time pour les contrôles Octroi de licence à un contrôleTRAVAUX PRATIQUESCréer des contrôles WPF et les utiliser dans le gestionnaire de contacts.LINQ (Language Integrated Query)
Des requêtes/traitements au-delà des simples bases de données ... Comment utiliser LINQ dans un programme VB.NET ? Manipuler des collections d'objets avec LINQ (LINQ to Object) Gérer des documents XML avec LINQ (LINQ to XML) Ecriture de requêtes complexes sur des sources XML Gérer le mapping entre les types VB.NET et les enregistrements d'une base (LINQ to SQL) Interroger les données d'un dataset (LINQ to Dataset) Ecrire des requêtes sur un modèle conceptuel (LINQ to Entities) LINQ et les performancesTRAVAUX PRATIQUESMise en place des classes métier et d'une basse de données par LINQ to SQL.Manipulation (insertion, modification, selection) des données avec LINQWCF
Architecture orienté Services Les contrats de service Comprendre et utiliser les points de terminaison Configuration et hébergement d'un service Service bidirectionnel Créer un service WCF sans serveurTRAVAUX PRATIQUESCréation d'un chat en WCFProgramme mis à jour le 29/07/2025
Public concerné
Cette formation VB.NET avancé s'adresse aux développeurs d'application d'entreprise expérimentés ainsi qu'aux chefs de projet.

Prérequis
Bonne connaissance d'au moins un langage .NET (C# ou VB.net). Avoir suivi la formation Visual Basic .NET (VB2560) est un bon pré-requis à cette formation
J’évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Faire le testFinancement
Cette formation peut être prise en charge par votre entreprise, seule ou avec l’appui de son opérateur de compétences. Nous fournissons le devis et les pièces attendues par l’OPCO.
5/5
1 avis
« Mon avis sur le formateur : "Bon sens de la pédagogie, à l'écoute, dynamique, très bon niveau de connaissance." Mon avis sur la salle de formation : "L'outil de communication "Adobe Connect" n'était pas facile d'utiliser. On l'a remplacé par Teams." Ce que j'ai le plus apprécié : "Bon formateur" Ce que j'ai le moins apprécié : "Adobe Connect" »
FK
Les avis figurant ci-dessus sont issus des fiches d’évaluation que remplissent les participants à la fin de la formation. Ils sont ensuite publiés automatiquement si les personnes ont explicitement accepté que nous les diffusions.
Formations liées
- Visual Basic .NETRéf. VB25605 joursIntermédiaire
- Web Services REST - Mise en œuvre en C#Réf. DWSR3 joursIntermédiaireProchaine session : 26 oct.2 090 €
- .NET : Bonnes pratiques et Design PatternsRéf. JPDP4 joursIntermédiaireProchaine session : 14 déc.2 490 €
- C# perfectionnement et optimisation Réf. SLCA4 joursAvancéProchaine session : 30 nov.2 490 €