Namespaces, diretivas using e usings globais (observação)
Organize tipos com namespaces, importe namespaces com using (e aliases), evite conflitos de nomes e observe que global using é mais recente que o C# 6.
Namespaces, diretivas using e usings globais (observação) é uma aula grátis de C# Academy no CoddyKit. Esta é a aula 2 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C# Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C# Academy inclui 3 aulas no total.
Visão geral de espaços de nomes e importações
Objetivo: Organize e importe código.
- espaço de nomes agrupa tipos relacionados
- using importa espaços de nomes
- Os aliases resolvem conflitos de nomes
- global using é mais recente que o C# 6 (apenas informativo)
Declarar espaço de nomes e tipo
Defina um espaço de nomes para agrupar tipos; você sempre pode usar o nome totalmente qualificado para acessar um tipo.
using System;
namespace MyApp.Models
{
public class User
{
public string Name { get; private set; }
public User(string name) { Name = name; }
}
}
public class Program
{
public static void Main(string[] args)
{
// Fully-qualified name without using
MyApp.Models.User u = new MyApp.Models.User("Ada");
Console.WriteLine(u.Name);
}
}
Noções básicas da diretiva using
Add uma diretiva using para importar um espaço de nomes e poder usar nomes de tipos abreviados.
using System;
using MyApp.Models; // import the namespace declared previously
namespace MyApp.Models
{
public class User
{
public string Name { get; private set; }
public User(string name) { Name = name; }
}
}
public class Program
{
public static void Main(string[] args)
{
// Short type name thanks to using
User u = new User("Alan");
Console.WriteLine(u.Name);
}
}
Espaços de nomes aninhados e nomes totalmente qualificados
Os espaços de nomes podem ser aninhados. Use nomes totalmente qualificados quando quiser ser explícito.
using System;
namespace Company
{
namespace Billing
{
public class Invoice { public int Number; }
}
namespace Support
{
public class Ticket { public int Id; }
}
}
public class Program
{
public static void Main(string[] args)
{
Company.Billing.Invoice inv = new Company.Billing.Invoice();
inv.Number = 1001;
Company.Support.Ticket t = new Company.Support.Ticket();
t.Id = 42;
Console.WriteLine("Invoice " + inv.Number + ", Ticket " + t.Id);
}
}
Alias de using
Use um alias de using para desambiguar nomes de tipos idênticos ou encurtar nomes longos e qualificados.
using System;
// Two classes with the same short name in different namespaces
namespace LibA { public class Logger { public string Name = "A"; } }
namespace LibB { public class Logger { public string Name = "B"; } }
// Create aliases to disambiguate
using ALogger = LibA.Logger;
using BLogger = LibB.Logger;
public class Program
{
public static void Main(string[] args)
{
ALogger a = new ALogger();
BLogger b = new BLogger();
Console.WriteLine(a.Name + " & " + b.Name); // A & B
}
}
Observação sobre global using e dicas
Observação: global using surgiu em versões mais recentes do C# (não existe no C# 6). No C# 6, coloque as diretivas using no início de cada arquivo.
- Agrupe tipos relacionados em espaços de nomes claros.
- Mantenha os nomes curtos, mas significativos.
- Use aliases para resolver conflitos.
Significado da diretiva using
Recapitulação
Recapitulação: Use espaço de nomes para organizar tipos e using para importá-los por arquivo. Resolva conflitos com aliases. global using é um recurso mais recente; no C# 6, mantenha as diretivas using no início do arquivo.
Perguntas Frequentes
A aula “Namespaces, diretivas using e usings globais (observação)” é grátis?
Sim — o texto completo de “Namespaces, diretivas using e usings globais (observação)” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C# Academy, atualize para CoddyKit PRO. O curso de C# Academy inclui 3 aulas no total.
O que vou aprender em “Namespaces, diretivas using e usings globais (observação)”?
Organize tipos com namespaces, importe namespaces com using (e aliases), evite conflitos de nomes e observe que global using é mais recente que o C# 6. Você pratica C# Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar C# Academy?
Nenhuma experiência prévia é necessária. C# Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 3.
Quanto tempo leva a aula “Namespaces, diretivas using e usings globais (observação)”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de C# Academy?
Sim. Cada aula de C# Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- public/internal/protected/private (com observação sobre file)
- Namespaces, diretivas using e usings globais (observação)
- Tipos parciais e arquivos