Menu
Coddy logo textTech

Namespaces e Diretivas

Parte da seção Programação Orientada a Objetos do Journey de C# da Coddy — lição 2 de 70.

Namespaces organizam seu código e evitam conflitos de nomenclatura. Eles agrupam classes relacionadas, assim como pastas organizam arquivos.

Crie uma classe dentro de um namespace

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

Use uma diretriz using para acessar classes de outro namespace

using System;
using MyApp.Models;

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

Saída:

Alice

Sem uma diretriz using, você deve usar o nome totalmente qualificado

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

A diretiva using permite que você referencie tipos em um namespace sem digitar o caminho completo do namespace todas as vezes. System é um namespace comum que contém classes fundamentais como Console.

challenge icon

Desafio

Médio

Você tem uma classe User no namespace MyApp.Models. Adicione a diretiva using correta em Program.cs para usar a classe User sem o nome totalmente qualificado.

Folha de consulta

Namespaces organizam o código e evitam conflitos de nomenclatura ao agrupar classes relacionadas.

Crie uma classe dentro de um namespace:

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

Use uma diretiva using para acessar classes de outro namespace:

using System;
using MyApp.Models;

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

Sem uma diretiva using, use o nome totalmente qualificado:

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

O namespace System contém classes fundamentais como Console.

Experimente você mesmo

using System;
// TODO: Adicionar diretiva using para MyApp.Models

class Program
{
    static void Main()
    {
        string userName = Console.ReadLine();
        // TODO: Criar um objeto User usando userName
        // TODO: Imprimir "User created: " seguido pelo Name do usuário
    }
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Programação Orientada a Objetos