0Pricing
C# Academy · บทเรียน

เนมสเปซ คำสั่ง using และ global usings (หมายเหตุ)

จัดระเบียบชนิดด้วยเนมสเปซ นำเข้าเนมสเปซด้วย using (รวมถึงนามแฝง) หลีกเลี่ยงชื่อชนกัน และจำไว้ว่า global using ใหม่กว่า C# 6

เนมสเปซ คำสั่ง using และ global usings (หมายเหตุ) เป็นบทเรียน C# Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C# Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C# Academy มีบทเรียนทั้งหมด 3 บทเรียน

ภาพรวมเนมสเปซและการนำเข้า

เป้าหมาย: จัดระเบียบและนำเข้าโค้ด

  • namespace จัดกลุ่มชนิดข้อมูลที่เกี่ยวข้องกัน
  • using นำเข้าเนมสเปซ
  • นามแฝงช่วยแก้ชื่อที่ชนกัน
  • global using เป็นความสามารถที่ใหม่กว่า C# 6 (ข้อมูลเท่านั้น)

การประกาศเนมสเปซและชนิดข้อมูล

กำหนด namespace เพื่อจัดกลุ่มชนิดข้อมูล และคุณสามารถใช้ชื่อแบบระบุครบถ้วนเพื่อเข้าถึงชนิดข้อมูลได้เสมอ

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

เพิ่มคำสั่ง using เพื่อนำเข้าเนมสเปซ ทำให้คุณใช้ชื่อชนิดข้อมูลแบบสั้นได้

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

ใช้นามแฝงของ using เพื่อแยกความแตกต่างระหว่างชนิดข้อมูลที่มีชื่อเหมือนกัน หรือลดความยาวของชื่อที่ระบุครบถ้วน

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

หมายเหตุและเคล็ดลับเกี่ยวกับ global using

หมายเหตุ: global using เพิ่มเข้ามาใน C# รุ่นใหม่กว่า (ไม่มีใน C# 6) ใน C# 6 ให้วางคำสั่ง using ไว้ด้านบนของแต่ละ file

  • จัดชนิดข้อมูลที่เกี่ยวข้องกันไว้ใน namespace ที่ชัดเจน
  • ตั้งชื่อให้สั้นแต่มีความหมาย
  • ใช้นามแฝงเพื่อแก้ชื่อที่ชนกัน

ความหมายของคำสั่ง using

ตรวจสอบความเข้าใจ: คำสั่ง using ที่อยู่ด้านบนของ file C# ทำหน้าที่อะไร

ทบทวน

ทบทวน: ใช้ namespace เพื่อจัดระเบียบชนิดข้อมูล และใช้ using เพื่อนำเข้าชนิดข้อมูลในแต่ละ file แก้ชื่อที่ชนกันด้วยนามแฝง การนำเข้าแบบ global เป็นความสามารถรุ่นใหม่ ใน C# 6 ให้เก็บคำสั่ง using ไว้ด้านบนของ file

คำถามที่พบบ่อย

บทเรียน “เนมสเปซ คำสั่ง using และ global usings (หมายเหตุ)” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “เนมสเปซ คำสั่ง using และ global usings (หมายเหตุ)” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C# Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C# Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “เนมสเปซ คำสั่ง using และ global usings (หมายเหตุ)”

จัดระเบียบชนิดด้วยเนมสเปซ นำเข้าเนมสเปซด้วย using (รวมถึงนามแฝง) หลีกเลี่ยงชื่อชนกัน และจำไว้ว่า global using ใหม่กว่า C# 6 คุณปฏิบัติ C# Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C# Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน C# Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน

บทเรียน “เนมสเปซ คำสั่ง using และ global usings (หมายเหตุ)” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน C# Academy นี้ได้ไหม

ได้ บทเรียน C# Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. public/internal/protected/private (พร้อมหมายเหตุเรื่อง file)
  2. เนมสเปซ คำสั่ง using และ global usings (หมายเหตุ)
  3. ชนิดแบบบางส่วนและไฟล์
← กลับไปที่ C# Academy