0Pricing
C# Academy · Урок

Пространства имён, директивы using и глобальные using (примечание)

Организуйте типы с помощью пространств имён, импортируйте пространства имён через using (и псевдонимы), избегайте конфликтов имён и учитывайте, что global using появился после C# 6.

«Пространства имён, директивы using и глобальные using (примечание)» — бесплатный урок C# Academy на CoddyKit. Это урок 2 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C# Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C# Academy содержит 3 уроков всего.

Пространства имён и импорт: обзор

Цель: организовать и импортировать код.

  • пространство имён объединяет связанные типы
  • импорт подключает пространства имён
  • Псевдонимы устраняют конфликты имён
  • глобальный импорт появился после C# 6 (только справочная информация)

Объявление пространства имён и типа

Определите пространство имён, чтобы объединить типы; для доступа к типу всегда можно использовать его полное имя.

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);
  }
}

Основы директивы импорта

Добавьте директиву импорта, чтобы подключить пространство имён и использовать короткие имена типов.

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);
  }
}

Вложенные пространства имён и полные имена

Пространства имён могут быть вложенными. Используйте полные имена, когда хотите указать тип однозначно.

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);
  }
}

Псевдоним импорта

Используйте псевдоним импорта, чтобы различать одинаковые имена типов или сокращать длинные полные имена.

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
  }
}

Примечание о глобальном импорте и советы

Примечание: глобальный импорт появился в более новых версиях C# (его нет в C# 6). В C# 6 размещайте директивы импорта в начале каждого файла.

  • Объединяйте связанные типы в понятные пространства имён.
  • Делайте имена короткими, но содержательными.
  • Используйте псевдонимы для устранения конфликтов.

Значение директивы импорта

Быстрая проверка: что делает директива импорта в начале файла C#?

Повторение

Повторение: используйте пространство имён для организации типов, а импорт — для их подключения в отдельном файле. Устраняйте конфликты с помощью псевдонимов. Глобальный импорт — более новая возможность; в C# 6 размещайте импорты в начале файла.

Часто задаваемые вопросы

Урок «Пространства имён, директивы using и глобальные using (примечание)» бесплатный?

Да — полный текст урока «Пространства имён, директивы using и глобальные using (примечание)» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C# Academy, подпишись на CoddyKit PRO. Курс C# Academy содержит 3 уроков всего.

Чему я научусь в уроке «Пространства имён, директивы using и глобальные using (примечание)»?

Организуйте типы с помощью пространств имён, импортируйте пространства имён через using (и псевдонимы), избегайте конфликтов имён и учитывайте, что global using появился после C# 6. Ты практикуешь C# Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать C# Academy?

Предыдущий опыт не требуется. C# Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 3.

Сколько времени занимает урок «Пространства имён, директивы using и глобальные using (примечание)»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке C# Academy?

Да. Каждый урок C# Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. public/internal/protected/private (с примечанием о file)
  2. Пространства имён, директивы using и глобальные using (примечание)
  3. Частичные типы и файлы
← Назад к C# Academy