0Pricing
C# Academy · Lekcja

Przestrzenie nazw, dyrektywy using i global usings (uwaga)

Organizuj typy za pomocą przestrzeni nazw, importuj przestrzenie nazw przez using (i aliasy), unikaj konfliktów nazw i pamiętaj, że global using jest nowszy niż C# 6.

Przestrzenie nazw, dyrektywy using i global usings (uwaga) to bezpłatna lekcja C# Academy na CoddyKit. To lekcja 2 z 3. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej C# Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs C# Academy zawiera 3 lekcji w sumie.

Przegląd przestrzeni nazw i using

Cel: Porządkuj i importuj kod.

  • namespace grupuje powiązane typy
  • using importuje przestrzenie nazw
  • Aliasy rozwiązują konflikty nazw
  • global using jest nowszy niż C# 6 (tylko informacja)

Deklarowanie przestrzeni nazw i typu

Zdefiniuj namespace, aby grupować typy; zawsze możesz użyć nazwy w pełni kwalifikowanej, aby uzyskać dostęp do typu.

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

Podstawy dyrektywy using

Dodaj dyrektywę using, aby zaimportować przestrzeń nazw i móc używać krótkich nazw typów.

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

Zagnieżdżone przestrzenie nazw i nazwy w pełni kwalifikowane

Przestrzenie nazw mogą być zagnieżdżane. Używaj nazw w pełni kwalifikowanych, gdy chcesz jednoznacznie wskazać typ.

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 dyrektywy using

Użyj aliasu using, aby rozróżnić identyczne nazwy typów lub skrócić długie nazwy kwalifikowane.

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

Uwaga dotycząca global using i wskazówki

Uwaga: Konstrukcja global using pojawiła się w nowszych wersjach języka C# (nie występuje w C# 6). W C# 6 umieszczaj dyrektywy using na początku każdego pliku.

  • Grupuj powiązane typy w przejrzystych przestrzeniach nazw.
  • Twórz nazwy krótkie, ale znaczące.
  • Używaj aliasów, aby rozwiązywać konflikty.

Znaczenie dyrektywy using

Szybkie sprawdzenie: Co robi dyrektywa using umieszczona na początku pliku C#?

Podsumowanie

Podsumowanie: Używaj namespace do porządkowania typów, a using do importowania ich w poszczególnych plikach. Konflikty rozwiązuj za pomocą aliasów. Global using to nowsza funkcja; w C# 6 umieszczaj dyrektywy using na początku pliku.

Często zadawane pytania

Czy lekcja „Przestrzenie nazw, dyrektywy using i global usings (uwaga)” jest bezpłatna?

Tak — pełny tekst „Przestrzenie nazw, dyrektywy using i global usings (uwaga)” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu C# Academy, przejdź na CoddyKit PRO. Kurs C# Academy zawiera 3 lekcji w sumie.

Co nauczysz się w „Przestrzenie nazw, dyrektywy using i global usings (uwaga)”?

Organizuj typy za pomocą przestrzeni nazw, importuj przestrzenie nazw przez using (i aliasy), unikaj konfliktów nazw i pamiętaj, że global using jest nowszy niż C# 6. Ćwiczysz C# Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć C# Academy?

Nie wymagamy żadnego doświadczenia. C# Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 3.

Ile czasu zajmuje lekcja „Przestrzenie nazw, dyrektywy using i global usings (uwaga)”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji C# Academy?

Tak. Każda lekcja C# Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. public/internal/protected/private (z uwagą o file)
  2. Przestrzenie nazw, dyrektywy using i global usings (uwaga)
  3. Typy częściowe i pliki
← Powrót do C# Academy