Bases & syntaxe
Déclaration de variable
int nombre = 5;
Utilisé pour stocker des données simples.
Structures conditionnelles
if (nombre > 0)
{
Console.WriteLine("Le nombre est positif.");
}
else if (nombre < 0)
{
Console.WriteLine("Le nombre est négatif.");
}
else
{
Console.WriteLine("Le nombre est zéro.");
}
Utilisé pour exécuter du code conditionnellement.
Boucles
for (int i = 0; i < 10; i++)
{
Console.WriteLine(i);
}
while (condition)
{
// Code à répéter tant que condition est vraie
}
Utilisé pour exécuter du code répétitivement.
Structures de données
Tableau
int[] nombres = new int[5];
nombres[0] = 1;
Utilisé pour stocker une collection fixe d'éléments du même type.
Liste
List<string> noms = new List<string>();
noms.Add("Alice");
Utilisé pour stocker une collection flexible d'éléments du même type.
Dictionnaire
Dictionary<string, int> ages = new Dictionary<string, int>();
ages["Alice"] = 30;
Utilisé pour stocker des paires clé-valeur.
Fonctions & methodes essentielles
Déclaration de méthode
public void AfficherMessage(string message)
{
Console.WriteLine(message);
}
Utilisé pour organiser le code en fonctions réutilisables.
Retourner une valeur
int Addition(int a, int b)
{
return a + b;
}
Utilisé pour calculer et retourner des valeurs.
Patterns courants
Singleton
public class Singleton
{
private static Singleton instance;
public static Singleton Instance
{
get
{
if (instance == null)
instance = new Singleton();
return instance;
}
}
private Singleton() { }
}
Utilisé pour s'assurer qu'une classe n'a qu'une seule instance.
Factory Method
public interface IShape
{
void Draw();
}
public class Circle : IShape
{
public void Draw()
{
Console.WriteLine("Drawing a circle");
}
}
public class ShapeFactory
{
public static IShape GetShape(string shapeType)
{
if (shapeType == "circle")
return new Circle();
// Other shapes...
return null;
}
}
Utilisé pour créer des objets sans spécifier la classe exacte.
Operations avancees
LINQ (Language Integrated Query)
var numbers = new List<int> { 1, 2, 3, 4, 5 };
var evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
Utilisé pour faciliter la manipulation et le filtrage des données.
Async/Await
public async Task<string> GetDataAsync()
{
using (HttpClient client = new HttpClient())
{
return await client.GetStringAsync("https://api.example.com/data");
}
}
Utilisé pour effectuer des opérations asynchrones et éviter les blocages.
Debugging & outils
Utiliser breakpoints
int a = 5;
int b = 10;
int c = a + b; // Mettre un breakpoint ici
Utilisé pour déboguer en suivant le flux du programme et les valeurs des variables.
Afficher la variable dans le débogueur
Console.WriteLine($"a: {a}, b: {b}, c: {c}");
Utilisé pour visualiser les valeurs actuelles des variables pendant l'exécution.