6.1 네임스페이스
6.2 솔루션과 프로젝트
6.3 프로젝트 추가
6.4 리팩토링(다중 소스 파일 구성)
6.5 라이브러리 만들기
1. 네임스페이스
1) 네임스페이스 이해
- 새로운 프로젝트를 시작하면, 자동으로 생성되는 코드
using System;
namespace 프로젝트명
{
class Program
{
static void Main(string[] args)
{
//
}
}
}
- 네임스페이스 = 프로젝트
ex) 집을 지을 때,
- 방, 부엌 : 네임스페이스
- 각 방 조명 시스템 :클래스
- 조명 켜고 끄는 스위치 : 함수
* 네임 스페이스가 필요한 이유
- 여러 프로그래머가 참여하는 큰 프로젝트의 경우, 같은 이름의 클래스, 함수 등이 존재 가능
-> 이러한 충돌을 피하면서 프로그램 개발하는 것이 목적 (= 개발자들이 각자 자신이 맡은 '방'만 꾸미도록 하는 것)
- 하나의 네임스페이스 안에서는 같은 이름을 가지는 객체가 허용되지 않지만, 다른 네임스페이스에는 같은 이름의 객체가 존재할 수 있다
- 주의 : Main() 함수를 가지는 네임스페이스 - 오직 하나만 존재 가능 (= 모든 집에 들어오는 현관이 하나인 것처럼)
2) using 키워드
- 네임 스페이스 호출하여 사용
-> using 문을 이용해 외부 네임스페이스를 연결하면, 해당 네임스페이스에 속한 클래스와 함수를 자유롭게 사용 가능
3) 네임스페이스의 별명 사용
- 참조하려는 네임스페이스의 이름이 길다면, 별명을 사용하여 줄여 쓰는 것도 가능
using <별명> = <네임스페이스 이름>;
using MyNameSpace_1;
using mns1 = MyNameSpace_1;
using <별명> = <네임스페이스 이름>;
2. 솔루션, 프로젝트
- 솔루션 : 프로젝트를 담는 그릇 (.sln)
- 프로젝트 : (csproj)
3. 프로젝트 추가
4. 리팩토링(다중 소스 파일 구성)
프로그램의 전체 구조는 그대로 유지한 채, 세부적인 기능들을 서로 다른 소스 코드 파일로 분리해서 관리
-> 소스 코드를 분리 : 프로그램 개발과 유지 보수를 수월하게 만듦
5. 라이브러리 만들기
- 라이브러리(=DLL) : 재사용이 가능한 범용 모듈
- 모듈 : 프로그램에서 독립적인 기능을 수행하는 부분을 따로 떼어놓은 것, 그 자체로 컴파일이 가능 + 재사용 가능
- 컴파일 vs. 빌드
- .NET Framework, .NET Core, .Net Standard 비교
6. 파일 및 폴더 제어
- System.IO 네임스페이스 : 파일과 폴더(디렉터리)를 생성, 삭제하고, 파일로부터 자료를 읽거나 쓰는 등의 다양한 기능을 위한 클래스와 함수, 프로퍼티를 제공
'책 > C# 스타터' 카테고리의 다른 글
[C# 스타터] Chapter 3. C# 문법 2 : 흐름 제어 (0) | 2022.08.03 |
---|---|
[C# 스타터] Chapter 1. 최소한의 지식 (0) | 2022.07.31 |
[C# 스타터] Chapter 0. 프로그래머 안경 쓰기 (0) | 2022.07.12 |
C# 스타터 - 문기준 (성안북스) (0) | 2022.07.03 |