La méthode Main
Point d’entrée du programme
Tout programme C# doit contenir une classe qui embarque une méthode nommée Main. Dans les exemples présentés précédemment, cette méthode est définie au sein de la classe Program.
Cependant, les versions récentes de C# permettent de ne pas écrire explicitement la méthode Main : le code écrit directement au sommet du fichier correspond par défaut au corps de Main.
- L’exécution d’un programme C# commence à la première ligne d’instruction à l’intérieur de la méthode
Main. - Le nom de la méthode
Maindoit obligatoirement débuter par une majuscule M.
Forme minimale valide de la méthode Main :
static void Main( )
{
Vos instructions de code
}Langage du code : JavaScript (javascript)
On ne peut ni omettre complètement la méthode Main, ni en déclarer plusieurs : une seule est requise.
Pour illustrer les notions, nous allons créer un projet .NET Framework avec Visual Studio 2022, un projet exclusivement compatible avec Windows.

Sélectionnez le modèle d’application console visible ci-dessous.

Au niveau du choix de version du framework, retenons la dernière version stable .NET 4.8.1.
Voici le contenu par défaut du fichier Program.cs après création du projet :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloDemo
{
internal class Program
{
static void Main(string[] args)
{
}
}
}
Langage du code : PHP (php)
Les lignes en haut importent plusieurs espaces de noms, ce qui nous donne accès aux classes natives intégrées à .NET.
Ajoutons une unique ligne de code à l’intérieur de la méthode Main :
Console.WriteLine(« hello foxdevelop.com »);

Cliquez sur le bouton triangulaire vert « Start » en haut de Visual Studio pour lancer l’exécution du programme.

Le runtime exécute par défaut la première instruction présente dans Main.
Si vous dupliquez la méthode Main, une erreur de syntaxe apparaît aussitôt.

L’erreur survient car un même espace de noms ne peut pas contenir deux fonctions portant le même nom. Nous allons donc créer deux espaces de noms distincts pour tester ce contournement.

Aucun soulignement ondulé rouge n’apparaît à présent, le code semble correct, mais tentons de compiler le projet.
Cliquez sur Start

Une erreur de compilation survient, affichée dans la fenêtre Error List en bas de l’éditeur.

Si la fenêtre Error List n’est pas visible, activez-la depuis la barre de menus supérieure.

La fenêtre de liste des erreurs indique précisément la position où le défaut est rencontré.

Caractères d’espacement (Whitespace)
Les caractères d’espacement regroupent tous les caractères qui ne produisent aucune sortie visible à l’écran. Le compilateur ignore l’intégralité des espaces dans le code source ; les développeurs les utilisent pour clarifier la structure du code et améliorer sa lisibilité.
Les types d’espacement courants sont :
- Espace simple (Space)
- Tabulation (Tab)
- Saut de ligne (New line)
- Retour chariot (Carriage return)
Exemple : ces deux extraits de code ont une mise en page visuelle totalement différente, mais le compilateur les traite rigoureusement de la même manière.
// Version bien indentée et lisible
Main()
{
Console.WriteLine("Hi, there!");
}
// Version compacte sans mise en forme
Main(){Console.WriteLine("Hi, there!");}Langage du code : JavaScript (javascript)
Voici une méthode Main standard avec une mise en forme soignée :
static void Main(string[] args)
{
Console.WriteLine("hello foxdevelop.com");
}Langage du code : JavaScript (javascript)
Si nous supprimons tous les espaces pour compacter le code sur une seule ligne, le programme compile sans aucun problème : pour le compilateur, les deux écritures sont identiques.
static void Main(string[] args){Console.WriteLine("hello foxdevelop.com");}Langage du code : JavaScript (javascript)

Instructions (Statements)
La syntaxe des instructions C# est très proche de celle de C et C++. Cette partie présente les règles générales des instructions ; chaque type d’instruction spécifique sera détaillé par la suite.
Une instruction est une ligne de code source qui définit un type de donnée ou ordonne au programme d’exécuter une action précise.
Toute instruction simple doit se terminer par un point-virgule ;. Voici deux instructions consécutives : la première déclare une variable entière var1 initialisée à 5, la seconde affiche la valeur de cette variable dans la fenêtre console.
int var1 = 5;
System.Console.WriteLine("The value of var1 is {0},welcome to foxdevelop.com", var1);Langage du code : JavaScript (javascript)

L’exemple de Main ci-dessus contient deux instructions, contrairement aux exemples précédents qui n’en comportaient qu’une seule. La première ligne crée une variable entière nommée var1 et lui attribue la valeur 5. La seconde ligne affiche un texte dans la console ; la chaîne {0} est un marqueur de substitution qui sera remplacé par la valeur stockée dans var1.
Blocs de code (Blocks)
Un bloc de code est constitué d’une paire d’accolades qui encapsule zéro ou plusieurs instructions ; il est traité syntaxiquement comme une unique instruction.
Encadrons les deux instructions de l’exemple précédent avec des accolades pour former un bloc de code complet :
{
int var1 = 5;
System.Console.WriteLine("The value of var1 is {0},welcome to foxdevelop.com", var1);
}Langage du code : JavaScript (javascript)

Règles fondamentales des blocs de code :
- Lorsqu’une structure syntaxique n’autorise qu’une seule instruction mais que la logique métier demande plusieurs opérations, encadrez l’ensemble des instructions dans un bloc de code.
- Certaines structures syntaxiques imposent l’utilisation d’un bloc de code ; on ne peut pas les remplacer par une instruction isolée.
- Les instructions simples se terminent par un point-virgule, mais un bloc de code ne porte pas de point-virgule à sa fin. Si le compilateur accepte un point-virgule après l’accolade fermante
}, celui-ci est interprété comme une instruction vide et constitue une mauvaise pratique d’écriture.
Schéma explicatif :
{
int var2 = 5; // Chaque instruction simple se termine par un point-virgule
System.Console.WriteLine("The value of var1 is {0}", var1); // Chaque instruction simple se termine par un point-virgule
} // Aucun point-virgule après l’accolade fermanteLangage du code : JavaScript (javascript)

Toutes les instructions indépendantes classiques nécessitent un point-virgule en fin de ligne ;

Voici un exemple complet que vous pouvez copier et exécuter directement :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloDemo
{
internal class Program
{
static void Main(string[] args)
{
{
int var1 = 5;
System.Console.WriteLine("The value of var1 is {0},welcome to foxdevelop.com", var1);
}; ; ; ;
}
}
}
Langage du code : PHP (php)