Vous êtes sur la page 1sur 43

 Vue d’ensemble de VS 2019

 Écriture d’une application Console


 Écriture d’une application Graphique
 Débogage des Applications avec VS 2019
 Tests unitaires

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Visual Studio est un environnement de développement
intégré complet (IDE) utilisé pour développer des
applications pour Windows, Linux, MacOS, IOS, Android
et d'autres plates-formes. Il se compose d'un éditeur de
code source, concepteur, compilateur, et débogueur.
Il y a trois éditions de Visual Studio 2019 : Community,
Professionnel, et Entreprise. Visual Studio Community
utilisé dans ce cours, est gratuit.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Avant de commencer ce cours, vous devez avoir Visual
Studio installé. Si vous avez déjà installé Visual Studio,
s'assurer que vous utilisez la dernière version en
exécutant l'installateur de studio visuel.
Dans le menu Démarrer, sélectionnez Visual Studio
Installer.
Si le bouton Mise à jour s'affiche, comme dans l'image
suivante, sélectionnez-le. Visual Studio téléchargera et
installera toutes les mises à jour.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
Solution Visual Studio

Les solutions Visual Studio contiennent des projets .NET.


Elles peuvent en contenir plusieurs de différent type.

projet ASP.NET projet WPF


.aspx .csproj .xaml .csproj
.aspx.cs .config .xaml.cs .config

projet Console
.cs .csproj
.config
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
Solution Visual Studio

Quelques définitions
Projet
Vos premières applications seront constituées d'un seul
projet. Votre projet consistera en votre code source (par
exemple, C et XAML), toutes les ressources dont votre
application a besoin (images et sons) et d'autres
informations Visual Studio.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Solution Visual Studio

Quelques définitions
Solution
Une solution peut englober plus d'un projet. Pourquoi? Peut-
être que votre application utilise un autre projet pour
certaines fonctionnalités clés. Ou peut-être votre
application s'exécute sur différents types d'appareils et
doit être construit de manière légèrement différente. Une
solution rassemble tous ces projets en un seul endroit.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Solution Visual Studio

Quelques définitions
IntelliSense
IntelliSense est un ensemble de fonctionnalités qui affiche
des informations sur votre code directement dans l'éditeur
et, dans certains cas, écrit de petits morceaux de code pour
vous. C'est comme avoir la documentation de base en ligne
dans l'éditeur, ce qui vous évite d'avoir à chercher ailleurs.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
1 Ouvrir VS 2019
2 Dans le menu Fichier, cliquer sur Nouveau, puis Projet
3 Dans la boîte de dialogue Nouveau Projet, indiquer :
- Le modèle de Projet
- Le nom du Projet
- Le chemin d’accès du Projet
Puis cliquer sur OK
Les fonctionnalités de productivité programmeur incluent:
IntelliSense
Code snippets (extraits de code)
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
Briques de base des applications .NET Framework
Collection de types et de ressources formant une unité
fonctionnelle logique

MonAssembly .dll ou .exe

Assembly signé
MaClasseA avec un certificat
MaResource numérique
MaClasseB V 1.1.254.1

Version Assembly
<major>.<minor>.<build>.<revision>

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Les Assemblies contiennent du code MSIL, qui n’est pas
executable. Le CLR :

1
Charge les assemblies que l’application référence
2
Vérifie et compile les assemblies en code machine
3
Exécute l’ assembly sous forme d’exécutable

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Caspol.exe Makecert.exe

Ngen.exe
Gacutil.exe

Ildasm.exe Sn.exe
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
Dans cette démonstration :
• Exécuter une application .NET Framework

• Ouvrir Ildasm

• Désassembler un assembly .NET Framework

• Examiner l’ assembly désassemblé

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
 Que sont les classes et les namespaces?
 La Structure d’une Application Console
 Lecture et affichage dans une Application
Console
 Meilleures Pratiques pour Commenter les
Applications C#

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Une classe décrit une abstraction de données

Un namespace représente une collection logique de classes

System.IO namespace

classe File classe FileInfo classe Path

classe DirectoryInfo classe Directory

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Rend le namespace System visible

using System;
namespace MonApplication déclaration Namespace

{
class Program déclaration de la classe Program
{
static void Main(string[] args)
{
déclaration méthode Main
}
}}

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Classe System.Console inclut:
Clear()

Read()

ReadKey()

ReadLine()

Write()

WriteLine()
using System;
...
Console.WriteLine(“Salut MTDSI2020!“);

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
 Afficher sur une nouvelle ligne le
message, "Appuyez sur une touche
quelconque pour continuer ".
 Capturer et afficher la touche appuyée
par l’utilisateur.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Commencer les procédures par un bloc commentaire

Dans les procédures longues, utiliser les commentaires pour


séparer les unités de travail
Lorsque vous déclarez les variables, utiliser un commentaire
pour expliquer l’usage de la variable
Lorsque vous écrivez une instruction conditionnelle,
ajouter un commentaire pour expliquer chaque décision
prise et ses effets

// Ceci est un commentaire sur une ligne séparée.


string message = “Bonjour les gars!"; // Commentaire en ligne.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
 Qu'est-ce WPF?
 Structure d'une Application WPF
 La bibliothèque des contrôles WPF
 Evénements WPF
 Construction d’une Application WPF simple
 Démonstration: Construction d’une Application
WPF simple

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
WPF est une technologie pour
bâtir des applications sous
Windows en combinant: Fonctionnalités WPF

Support étendu pour le



développement d’application client
Média
Conception interface utilisateur

aisée
Documents
interface graphique
✓ Utilisation de XAML
utilisateur
Support pour l’interopérabilité

avec les anciennes applications

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Fichier XAML déclaratif
<Window x:Class="WpfApplication1.MainWindow” xmlns=“..“ xmlns:x=“.."
Title=“Profilage Passagers" Height="350" Width="525">
<Grid>
</Grid>
</Window>

namespace WpfApplication1 Fichier Visual C# Code-behind


{
public partial class MainWindow : Window
{
public MainWindow()
{ InitializeComponent();
} }
}
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
 Connaissez-vous d'autres
langages de balisage qui se
comportent de manière similaire
à XAML?

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Les contrôles WPF incluent:
Button Label

Canvas StackPanel

ComboBox TextBox

Grid

Button example:
<Button Name=“btnValider" BorderBrush="Black" BorderThickness="1"
Click=“btnValiderOnClick" ClickMode="Press">
Valider
</Button>
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
Vous créez un formulaire simple pour
capturer les informations d'identification
d’un utilisateur (code et nom d'utilisateur,
mot de passe) et lui permettre d'ouvrir
une session.
Quels contrôles pourriez-vous utiliser pour
construire ce formulaire ?

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
 Pour la mise en page, utilisez une grille Grid.
 Pour les étiquettes nom d'utilisateur et mot de passe,
utilisez le contrôle Label.
 Pour les boîtes de saisie nom d'utilisateur et mot de
passe, utilisez une zone de texte TextBox.
 Pour envoyer le formulaire, utiliser un bouton de
commande Button.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Sous WPF, on crée des applications événementielles, qui répondent,
par exemple, au clic d’un bouton, à la sélection d’élément etc…

Définition d’un Bouton


<Button Name=“btnValider" Click=“btnValider_Click"> Valider</Button>

Gestionnaire d’Événement

private void btnValider_Click(object sender, RoutedEventArgs e)


{
// Écrire le Code destiné au traitement de l’événement ici.
}

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Visual Studio permet de:

1 Créer une application WPF nouvelle

2 Ajouter des contrôles à une application WPF

3 Fixer les propriétés des contrôles

4 Ajouter les gestionnaires d’événement aux


contrôles

5 Ajouter le code pour implémenter la logique de


gestion
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
Dans cette démonstration, nous allons:
• Créer une nouvelle application WPF

• Ajouter des contrôles à l’ application WPF

• Fixer les propriétés des contrôles

• Ajouter du code à l’application

• Compiler et exécuter l’application

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
 Que sont les Commentaires XML?
 Balises XML Courantes
 Génération de Documentation à partir des
commentaires XML
 Générateur de fichier d’aide Sandcastle.

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Utiliser les commentaires XML pour générer la documentatio
d’aide pour les applications
/// <summary> La classe Hello affiche Bienvenue !!! à l’écran
/// </summary>
public class Hello
{
/// <summary> Nous utilisons des E/S en mode console. Pour plus
/// d’information au sujet de WriteLine,
/// voir <seealso cref="System.Console.WriteLine"/>
/// </summary>
public static void Main( )
{
Console.WriteLine(“Bienvenue !!! ");
}
École Supérieure Polytechnique – Département Génie Informatique DIC3
} Université Cheikh Anta Diop Dakar – Sénégal
Ces Balises incluent:

<summary> … </summary>

<remarks> … </remarks>

<example> … </example>

<code> … </code>

<returns> … </returns>

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
Générer un fichier XML dans VS 2019

<?xml version="1.0"?>
<doc>
<assembly> <name>UnProject</name></assembly>
<members>
<member name="T:Hello">
<summary> La class Hello affiche Bienvenue à l’écran
</summary>
</member>
<member name="M:Hello.Main">
...
</member>
</members>
</doc>
École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
 Débogage dans VStudio
 Usage de points d’arrêt
 Mode Pas-à-pas
 Utilisation de la fenêtre Debug

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
La mise au point est une partie essentielle du développement
Vstudio fournit une variété d’outils pour aider à la mise au
point de programmes

Start Debugging Break All

Step Out
Stop Debugging
Step Over

Step Into Restart


École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
On peut suspendre une application en mode Debug, et entrer
en mode arrêt (break)

VStudio autorise:

✓ Le choix d’une ligne de code comme point d’arrêt

✓ La désactivation d’un point d’arrêt

✓ La suppression d’un point d’arrêt

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
On peut exécuter le code ligne par ligne pour voir
exactement la progression des traitements.

VStudio permet un pas-à-pas:

✓ Détaillé

✓ Principal

✓ Sortant

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal
VStudio comprend plusieurs fenêtres utilisées pour
aider à la mise au point des applications
Threads

QuickWatch
Call Stack

Locals
Modules
Output

Memory Immediate Processes


École Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
• Exercice 1: Réaliser une Application Console Simple

• Exercice 2: Réaliser une Application WPF

• Exercice 3: Vérifier une Application

Temps
ÉcoleEstimé : 60 minutes
Supérieure Polytechnique – Département Génie Informatique DIC3
Université Cheikh Anta Diop Dakar – Sénégal
Merci de votre
attention

École Supérieure Polytechnique – Département Génie Informatique DIC3


Université Cheikh Anta Diop Dakar – Sénégal

Vous aimerez peut-être aussi