λ€μμ€νμ΄μ€(namespace) λ?
C#μ λ€μμ€νμ΄μ€λ μ½λλ₯Ό λ Όλ¦¬μ μΌλ‘ κ·Έλ£Ήννκ³ μ΄λ¦ μΆ©λμ λ°©μ§νκΈ° μν ꡬ쑰μ λλ€.
λμΌν μ΄λ¦μ ν΄λμ€, μΈν°νμ΄μ€ λ±μ΄ μ¬λ¬ κ³³μ μμ΄λ λ€μμ€νμ΄μ€λ₯Ό ν΅ν΄ ꡬλΆμ΄ κ°λ₯ν©λλ€.
λ€μμ€νμ΄μ€(namespace)μ μν
- μ½λμ λ
Όλ¦¬μ κ·Έλ£Ήν
- κ΄λ ¨λ ν΄λμ€, μΈν°νμ΄μ€, ꡬ쑰체, μ΄κ±°ν λ±μ νλμ λ€μμ€νμ΄μ€λ‘ λ¬Άμ΄ μ½λλ₯Ό 체κ³μ μΌλ‘ μ 리ν μ μμ΅λλ€.
- μ: System.Collectionsλ λ°μ΄ν° ꡬ쑰 κ΄λ ¨ ν΄λμ€λ€μ κ·Έλ£Ήν
- ν΄λμ€ μ΄λ¦ μΆ©λ λ°©μ§
- λμΌν μ΄λ¦μ ν΄λμ€κ° λ€λ₯Έ λ€μμ€νμ΄μ€μ μ‘΄μ¬ν΄λ μΆ©λνμ§ μμ΅λλ€.
- λ€μμ€νμ΄μ€λ₯Ό λͺ μμ μΌλ‘ μ§μ ν΄ μ¬μ©νλ©΄ μ€λ³΅λ μ΄λ¦μ ν΄λμ€λ₯Ό κ΅¬λΆ κ°λ₯ν©λλ€.
- κ°λ
μ± λ° μ μ§λ³΄μμ± ν₯μ
- νλ‘μ νΈκ° 컀μ§μλ‘ ν΄λμ€μ λ©μλκ° λ§μμ§λλ€. λ€μμ€νμ΄μ€λ‘ κ·Έλ£Ήννλ©΄ νμν μ½λλ₯Ό μ½κ² μ°Ύκ³ μ μ§λ³΄μν μ μμ΅λλ€.
- μ½λ μ¬μ¬μ©μ± μ¦κ°
- κ³΅ν΅ κΈ°λ₯μ κ°μ§ ν΄λμ€μ λ©μλλ₯Ό λ€μμ€νμ΄μ€λ‘ λ¬ΆμΌλ©΄ λ€λ₯Έ νλ‘μ νΈμμ μ¬μ¬μ©νκΈ° μ¬μμ§λλ€.
λ€μμ€νμ΄μ€(namespace) μ¬μ© μμ
1. κΈ°λ³Έ λ€μμ€νμ΄μ€ μ¬μ©
C#μμ κΈ°λ³Έ μ 곡λλ λ€μμ€νμ΄μ€λ Systemμ λλ€. μ΄λ₯Ό ν΅ν΄ λ€μν μ νΈλ¦¬ν° κΈ°λ₯μ μ¬μ©ν μ μμ΅λλ€.
using System;
namespace MyApplication
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!"); // System.Console μ¬μ©
}
}
}
2. μ¬μ©μ μ μ λ€μμ€νμ΄μ€
μ¬μ©μκ° μ§μ λ€μμ€νμ΄μ€λ₯Ό μ μν΄ κ·Έλ£Ήνν μ μμ΅λλ€.
- MathHelper ν΄λμ€λ MyCompany.Utilities λ€μμ€νμ΄μ€μ μ μλ¨.
- using ν€μλλ‘ λ€μμ€νμ΄μ€λ₯Ό κ°μ Έμ μ½κ² νΈμΆ.
using System;
namespace MyCompany.Utilities
{
public class MathHelper
{
public static int Add(int a, int b) => a + b;
}
}
namespace MyCompany.Application
{
using MyCompany.Utilities;
class Program
{
static void Main(string[] args)
{
int result = MathHelper.Add(3, 5);
Console.WriteLine($"Result: {result}");
}
}
}
3. λ€μμ€νμ΄μ€ μ€μ²©
μ€μ²© λ€μμ€νμ΄μ€λ₯Ό μ¬μ©ν΄ λ μΈλΆνλ ꡬ쑰λ₯Ό λ§λ€ μ μμ΅λλ€.
namespace MyCompany
{
namespace Utilities
{
public class Logger
{
public static void Log(string message)
{
Console.WriteLine($"[Log]: {message}");
}
}
}
}
class Program
{
static void Main()
{
MyCompany.Utilities.Logger.Log("Application started.");
}
}
4. λ³μΉ(alias) μ¬μ©
κΈ΄ λ€μμ€νμ΄μ€ μ΄λ¦μ κ°λ¨νκ² λ³μΉμΌλ‘ μ¬μ©ν μ μμ΅λλ€.
namespace MyCompany.Utilities
{
public class MathHelper
{
public static int Add(int a, int b) => a + b;
}
}
namespace MyCompany.Application
{
using MyMath = MyCompany.Utilities.MathHelper;
class Program
{
static void Main()
{
int result = MyMath.Add(7, 3);
Console.WriteLine($"Result: {result}");
}
}
}
5. μ΄λ¦ μΆ©λ ν΄κ²°
κ°μ μ΄λ¦μ ν΄λμ€κ° λ€λ₯Έ λ€μμ€νμ΄μ€μ μμ λ, λ€μμ€νμ΄μ€λ₯Ό λͺ μμ μΌλ‘ μ§μ ν©λλ€.
namespace LibraryA
{
public class Helper
{
public static void Display() => Console.WriteLine("Helper from LibraryA");
}
}
namespace LibraryB
{
public class Helper
{
public static void Display() => Console.WriteLine("Helper from LibraryB");
}
}
class Program
{
static void Main()
{
LibraryA.Helper.Display();
LibraryB.Helper.Display();
}
}
6. κΈλ‘λ² λ€μμ€νμ΄μ€
global:: ν€μλλ₯Ό μ¬μ©ν΄ μ΅μμ λ€μμ€νμ΄μ€λ₯Ό λͺ μμ μΌλ‘ μ μ‘°ν μ μμ΅λλ€.
namespace MyCompany
{
class Program
{
static void Main()
{
global::System.Console.WriteLine("Hello from global namespace!");
}
}
}
C#μ κΈ°λ³Έ λ€μμ€νμ΄μ€
- System: ν΅μ¬ ν΄λμ€(μ: Console, String) ν¬ν¨.
- System.Collections.Generic: μ λ€λ¦ 컬λ μ (μ: List, Dictionary).
- System.IO: νμΌ μ μΆλ ₯ κ΄λ ¨ ν΄λμ€(μ: Stream, File).
- System.Linq: LINQ κ΄λ ¨ λ©μλ λ° νμ₯ λ©μλ.
λ€μμ€νμ΄μ€ μ€κ³ λ°©λ²
- νλ‘μ νΈμ κ·λͺ¨μ λ§κ² λ€μμ€νμ΄μ€λ₯Ό μ€κ³νλ λ°©λ²
- μμ νλ‘μ νΈ: λ¨μΌ λ€μμ€νμ΄μ€λ‘ κ·Έλ£Ήν.
- μ€κ° κ·λͺ¨: CompanyName.ModuleName.
- λκ·λͺ¨: CompanyName.Product.Module.SubModule.
μμ :
namespace Contoso.ECommerce.OrderProcessing
{
public class Order
{
public int OrderId { get; set; }
public string CustomerName { get; set; }
}
}
λ€μμ€νμ΄μ€μ μ΄μ λΈλ¦¬
- λ€μμ€νμ΄μ€λ μ½λ κ·Έλ£Ήν λ¨μμ΄κ³ , μ΄μ λΈλ¦¬λ μ½λ λ°°ν¬ λ¨μμ λλ€.
- νλμ λ€μμ€νμ΄μ€κ° μ¬λ¬ μ΄μ λΈλ¦¬μ κ±Έμ³ μμ μ μμ.
- μ: System λ€μμ€νμ΄μ€λ mscorlib.dll, System.dll λ±μμ μ 곡.
λ€μμ€νμ΄μ€μ μ₯λ¨μ
μ₯μ :
- μ΄λ¦ μΆ©λ λ°©μ§
- μ½λμ κ°λ μ±κ³Ό μ μ§λ³΄μμ± μ¦κ°
- λκ·λͺ¨ νλ‘μ νΈμμ λͺ¨λνμ νμ μ©μ΄
λ¨μ
- κ³Όλν λ€μμ€νμ΄μ€ λΆλ¦¬ μ 볡μ‘λ μ¦κ°
- λ€μμ€νμ΄μ€ μ€λ³΅ μ κ΄λ¦¬ μ΄λ €μ
'π Development > C#' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[C# .net] Windows μ격 μ¦λͺ κ΄λ¦¬μ λ‘κ·ΈμΈ λ°©λ² (0) | 2024.12.11 |
---|---|
[C#] GDI+ (Graphics Device Interface Plus) λ? (1) | 2024.11.19 |
C#κ³Ό .NETμΌλ‘ μΉμΊ 촬μ λ° μ μ₯ μμ (3) | 2024.11.12 |
C#κ³Ό .NET κ΄κ³, μ½κ² μ΄ν΄νκΈ° (2) | 2024.11.11 |