[C#] 10.2 .NET 어셈블리(라이브러리) 만들기

여기서는 .NET 어셈블리를 만들어 보기로 합시다. .NET 어셈블리 중에 실행 파일을 만드는 것은 이미 알고 있으므로 라이브러리를 만들어 봅시다. 그리고 다중 파일 어셈블리의 부속이 되는 모듈도 만들어 봅시다.

.NET에서 라이브러리는 쉽게 제작할 수 있습니다. 코드를 작성하는 부분에서 다른 어셈블리에서 사용할 수 있는 형식을 정의할 때 public 키워드를 명시합니다. 멤버도 마찬가지로 다른 어셈블리에서 접근을 허용하게 하려면 접근 지정을 public으로 지정합니다.

즉 다른 어셈블리에 정의한 형식이나 멤버 중에 사용할 수 있는 형식과 멤버는 접근 지정이 public으로 지정한 것 말고는 차이가 없습니다. COM과 Win32API에서의 복잡하고 까다로운 표현을 접근 지정자로 간단하게 해결하였습니다.

 

간단한 라이브러리를 하나 만들어 봅시다. 먼저 컴파일러 옵션을 이용하여 만드는 것을 보여 드리고 통합 개발 환경에서 만드는 것을 보여 드릴게요.

소스 코드를 편집합시다. 편집할 코드에는 다른 어셈블리에서 접근할 수 있는 Member 클래스와 접근할 수 없는 MemberInfo 클래스를 정의합시다. 그리고 Member에는 이름과 주소를 입력 인자로 받는 생성자와 이름 속성, 주소 속성의 get 블록을 public으로 접근 지정하여 다른 어셈블리에서 사용할 수 있게 합시다.

 

 

Visual Studio 명령 프롬프트에서 csc /t:library /out:MemberLib Member.cs을 입력하면 MemberLib.dll 파일명으로 .NET 어셈블리가 만들어집니다.

[그림 10.1] csc 명령어를 이용하여 .NET 어셈블리 만들기
[그림 10.1] csc 명령어를 이용하여 .NET 어셈블리 만들기

다음은 콘솔 명령어 csc의 옵션들입니다.

▶기본 옵션

▶ 자주 사용하는 옵션

Microsof Visual Studio로 라이브러리를 만들 때는 다음과 같이 새 프로젝트 템플릿에서 클래스 라이브러리를 선택하여 만들수 있습니다.

[그림 10.2] Microsoft Visual Staio에서 클래스 라이브러리 만들기
[그림 10.2] Microsoft Visual Staio에서 클래스 라이브러리 만들기