[C#] 기본 프로그램 구조 학습C#/C#정리2021. 8. 2. 12:04
Table of Contents
🌳 닷넷 프레임워크
MS에서 발표한 응용 프로그램 개발 환경으로서 프로세스 가상 머신에 속한다.
닷넷 프레임워크 기반으로 만들어진 응용 프로그램은 반드시 닷넷 프레임워크가 미리 설치된 환경에서만 실행된다.
닷넷 프레임워크를 설치하면 가상 머신 역할을 하는 CLR(Common Language Runtime)
구성요소가 실행 될 수 있는 환경이 윈도우 운영체제에 마련된다.
CLR은 프로세스(EXE)가 실행되면 메모리에 함께 적재돼 실행된다.
프로그램이 시작하자마자 CLR을 로드하는 코드를 자동으로 EXE 파일 내부에 추가한다. 따라서 내부적으로 CLR이 먼저 로드된다.
닷넷 프레임워크 = CLR + 부가 구성 요소
🌳 닷넷 호환 언어
CLR에 의해 실행되는 중간언어는 어느 하나의 프로그래밍 언어에 종속된것은 아니다.
중간언어로 변환될 수 있는 언어를 닷넷 호환 언어라고한다.
🌳 중간 언어 (CIL)
CIL (Common Intermediate Language)
보통은 줄여서 IL이라고 한다.
🌳 어셈블리, 모듈, 매니페스트
어셈블리
C#으로 프로그램을 만드는 경우 대개 EXE
, DLL
파일을 만들게된다. 닷넷에서는 이런 실행파일을 어셈블리라고 한다.
어셈블리어와 헷갈릴 수 있지만
특별한 언급이 없다면 어셈블리=실행파일
모듈
어셈블리는 1개 이상의 모듈로 구성된다.
이때 모듈 하나당 1개의 파일이 대응된다.
매니페스트
어러 모듈을 관리하고자 할때 매니페스트(Manifest) 데이터를 담고있어야한다.
반응형
'C# > C#정리' 카테고리의 다른 글
[C#] 익명메소드와 람다식 (0) | 2021.09.20 |
---|---|
[C#] Event - Delegate를 사용한 이벤트 처리 (0) | 2021.08.31 |
[C#] Callback - 콜백은 어떻게 사용하는가? (0) | 2021.08.31 |
[C#] Delegate - 델리게이트(대리자)를 사용하는 이유 (0) | 2021.08.18 |
[C#] 확장 클래스 (0) | 2021.08.02 |
@반나무 :: 반나무_뿌리
3년차 WPF 개발자입니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!