Menu
Coddy logo textTech

Espaces de noms et directives

Fait partie de la section Programmation Orientée Objet du Journey C# de Coddy — leçon 2 sur 70.

Les espaces de noms organisent votre code et évitent les conflits de nommage. Ils regroupent les classes liées entre elles, tout comme les dossiers organisent les fichiers.

Créer une classe à l'intérieur d'un espace de noms

namespace MyApp.Models
{
    public class User
    {
        public string Name { get; set; }
        
        public User(string name)
        {
            Name = name;
        }
    }
}

Utilisez une directive using pour accéder aux classes d'un autre espace de noms

using System;
using MyApp.Models;

class Program
{
    static void Main()
    {
        User user = new User("Alice");
        Console.WriteLine(user.Name);
    }
}

Sortie :

Alice

Sans une directive using, vous devez utiliser le nom complet

MyApp.Models.User user = new MyApp.Models.User("Bob");

La directive using vous permet de référencer des types dans un espace de noms sans avoir à saisir le chemin complet de l'espace de noms à chaque fois. System est un espace de noms courant contenant des classes fondamentales telles que Console.

challenge icon

Défi

Moyen

Vous avez une classe User dans l'espace de noms MyApp.Models. Ajoutez la directive using correcte dans Program.cs pour utiliser la classe User sans le nom complet.

Aide-mémoire

Les espaces de noms organisent le code et évitent les conflits de nommage en regroupant les classes apparentées.

Créez une classe à l'intérieur d'un espace de noms :

namespace MyApp.Models
{
    public class User
    {
        public string Name { get; set; }
        
        public User(string name)
        {
            Name = name;
        }
    }
}

Utilisez une directive using pour accéder aux classes d'un autre espace de noms :

using System;
using MyApp.Models;

class Program
{
    static void Main()
    {
        User user = new User("Alice");
        Console.WriteLine(user.Name);
    }
}

Sans directive using, utilisez le nom complet :

MyApp.Models.User user = new MyApp.Models.User("Bob");

L'espace de noms System contient des classes fondamentales comme Console.

Essayez vous-même

using System;
// À FAIRE : Ajouter la directive using pour MyApp.Models

class Program
{
    static void Main()
    {
        string userName = Console.ReadLine();
        // À FAIRE : Créer un objet User en utilisant userName
        // À FAIRE : Afficher "User created: " suivi du Name de l'utilisateur
    }
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Programmation Orientée Objet