C# for Beginners – Lesson 18: Static Classes and Members, Namespaces
- 정적 클래스는 인스턴스화할 수 없는 클래스로, 객체를 생성할 수 없습니다. 🚫
- 주로 유틸리티 클래스로 사용되며, 특정 인스턴스 없이 기능에 직접 접근할 때 유용합니다. (예: C#의
File 클래스) 🛠️
- 정적 클래스 내의 모든 멤버(메서드, 데이터)는 반드시 정적이어야 합니다. 💡
- 전역적으로 공유되어야 하는 데이터(예: 로그 카운트)나 기능(예: 로깅 메서드)을 관리할 때 유용하며, 싱글톤과 유사하게 단일 인스턴스처럼 동작합니다. 🌍
- 네임스페이스는 대규모 프로젝트나 외부 라이브러리 사용 시 코드 조직화 및 이름 충돌 방지를 위해 사용됩니다. 📂
- 네임스페이스는 클래스 전체를
namespace MyNamespace { ... } 블록으로 감싸서 정의합니다. 🏷️
- 서로 다른 네임스페이스에 속한 클래스는 이름이 같더라도 충돌 없이 공존할 수 있습니다. (예:
GameLogging.Logger와 EngineLogging.Logger) 🤝
using MyNamespace; 지시문을 통해 해당 네임스페이스 내의 클래스에 직접 접근할 수 있으며, 그렇지 않을 경우 전체 경로를 명시해야 합니다. 🔗
- 여러 개발자가 같은 프로젝트에서 작업할 때 각자의 네임스페이스를 사용하여 클래스 이름 충돌 없이 효율적으로 협업할 수 있습니다. 🧑💻
- 공개 라이브러리나 API는 항상 네임스페이스를 사용하여 다른 라이브러리와의 충돌을 방지하고 코드의 재사용성을 높입니다. 📚
데브허브 | DEVHUB | C# for Beginners – Lesson 18: Static Classes and Members, Namespaces