Décode l'informatique

Comprendre un programme CSharp (C#)

Écrire un programme CSharp

Dans cette vidéo, vous allez comprendre un programme CSharp (C#). Notamment, vous verrez les spécificités et l’importance de chaque partie de la syntaxe du programme. En particulier, les notions introduites sont le Framework .Net, la directive using, les espaces de noms, les classes et les méthodes.

Comprendre un programme CSharp (C#)

L’application que vous avez développé dans la vidéo précédente va vous servir d’exemple pour mieux comprendre un programme CSharp (C#). Notamment, vous allez découvrir la logique de fonctionnement du programme C#.

En effet vous voyez de nombreux termes comme : using, namespace, class, etc. qui ont un sens bien précis. Hors, il est important de resituer tous ces éléments.

En effet, il faut bien comprendre que vous avez une première couche qui s’exécute c’est Windows. Windows est évidemment le programme principal dans lequel va fonctionner votre application. Par ailleurs, votre application communique avec Windows à travers l’environnement .Net.

Comprendre un programme CSharp (C#)
Comprendre un programme CSharp (C#)

L’environnement .Net

L’environnement dot net ou la plateforme dot net est un outil qui permet d’avoir un code qui se concentre le plus possible sur les couches métiers, utiles ou applicatives, plutôt que sur ce qui est lié au fonctionnement de Windows.

Concrètement dans l’application précédente lorsque vous la lanciez, vous aviez une fenêtre qui s’affichait. L’objectif de cette vidéo n’est pas de passer du temps à expliquer comment cette fenêtre doit s’afficher où elle doit s’afficher, quelles dimensions elle a, etc.

L’objectif est de comprendre un programme CSharp (C#).

Aussi, dans un premier temps, ce qui vous intéresse c’est d’afficher votre message. C’est là qu’intervient plusieurs outils comme l’instruction Console qui va vous permettre de faire simplement ce genre d’opération : afficher un message.

Notamment, l’instruction Console est en réalité une Classe. De la même façon que vous avez la classe Program dans Application001, vous avez la classe Console.

Qu’est-ce que c’est qu’une classe ?

Dans un premier temps, il est possible de définir une classe comme un simple regroupement de méthodes.

Il y a une terminologie à comprendre, aussi il y aura plusieurs vidéos pour vous aider à saisir toutes ses nuances. Aujourd’hui, c’est une simple introduction pour bien comprendre un programme C#.

La classe Console comprend plusieurs méthodes, dont WriteLine() et ReadLine().

La classe Console dispose d’au moins de ces deux méthodes.

Comprendre un programme CSharp (C#)
Comprendre un programme CSharp (C#)

Qu’est-ce que c’est qu’une méthode ?

Une méthode est un regroupement d’instructions. Les instructions sont les lignes de programmes qui vont s’exécuter.

Par exemple, WriteLine() et ReadLine() sont des méthodes qui sont comprises dans la classe Console.

Dans le code, vous voyez effectivement une classe qui comprend deux méthodes mais vous remarquerez aussi qu’il existe une classe Program qui enveloppe une autre méthode qui est un peu particulière qui est la méthode Main().

A quoi sert la méthode Main() ?

Lorsque le programme va démarrer, c’est la méthode Main() qui va s’exécuter en premier.

Cela veut dire que lorsque le programme se lance Windows va d’abord chercher le contenu de la méthode Main() et il va exécuter les lignes de codes qui se trouve dans cette méthode.

Maintenant, vous devez mieux comprendre un programme CSharp (C#).

Pourquoi avoir utilisé la classe Console ?

Console sert à créer la fenêtre dans laquelle le texte s’affiche. Ce texte a été passé en tant que paramètre. Autrement dit vous avez le paramètre entre les deux parenthèses de la méthode WriteLine() de la classe Console.

Namespace

Vous voyez aussi la notion de namespace (“espace de nom”). Dans Application001, le “namespace” correspond exactement au nom du projet.

Supposez que vous ayez une application très complexe dans laquelle il y a plusieurs classes Program.

Comment distinguer une classe Program d’une autre ?

Chaque classe Program possède un préfix. Celui-ci est le namespace auquel elle appartient : Application001 dans l’exemple.  S’il y a une ambiguïté, il est possible d’appeler la méthode Main() de la classe Program qui fait partie de l’espace de nom Application001.

La meilleure illustration de ce mécanisme est justement avec la classe Console.

La classe Console appartient à l’espace de nom qui s’intitule System. C’est le même “System” que celui qui se trouve en haut du programme, sur la première ligne, en face de using.

Directive using

Si Microsoft dans son modèle a mis en place using Sytem, c’est parce qu’il se doutait que la classe Console serait utilisée. Dans le programme, il est possible de préfixer par System, chacune des lignes qui appellent la classe Console. Du coup, l’instruction using System n’est plus nécessaire.

Les autres using ne sont pas nécessaires non plus. Vous pouvez les enlever car il est très facile de les retrouver, si vous en avez besoin. Donc, vous pouvez enlever tous les using, car la classe Console est préfixée par l’espace de nom System.

Si vous cliquez sur Démarrer, le programme se compile et se lance normalement.

Annulez vos modifications avec CTRL+Z, pour supprimer les dernières modifications.

Pour résumé, vous pouvez utiliser la classe Console sans être préfixée à condition de déclarer l’instruction using. Si vous reprenez le schéma, c’est la raison pour laquelle vous avez la classe console qui est incluse dans l’espace de nom System.

L’espace de nom permet de lever l’ambiguïté. Application001 utilise la classe Console de l’espace de nom System. Dans la classe Console Application001 a besoin des méthodes WriteLine() et ReadLine().

Microsoft365 Addict

Ajouter un commentaire