IT공부/IT서적

[시작하세요! C#10 프로그래밍] 1장. 들어가면서, 2장. 개발 환경 준비

shine94 2025. 4. 10. 16:13

* 해당 글은 시작하세요! C#10 프로그래밍 도서를 읽고 정리한 글입니다.

   https://product.kyobobook.co.kr/detail/S000200047759

 

시작하세요! C# 10 프로그래밍 | 정성태 - 교보문고

시작하세요! C# 10 프로그래밍 | 이 책의 목표는 여러분이 C#을 이용해 프로그래밍 기초를 탄탄하게 다질 수 있게 하는 것이다. 이를 위해 C# 언어의 최신 버전인 C# 10의 문법까지 구체적인 예제와

product.kyobobook.co.kr

 

 

 

 

* 닷넷 프레임워크(.NET Framework)

   마이크로소프트에서 발표한 응용 프로그램 개발 환경으로 프로그램 가상 머신에 속한다

 

* CLR(Common Language Runtime)

   가상머신 역할

 

* 공통 중간 언어(CIL : Common Intermediate Language)

   자바의 VM에서는 중간언어를 바이트코드(Bytecode)라고 하고

   C#의 닷넷 프레임워크에서의 중간언어를 CIL이라고 하며 줄여서 IL 코드, 또는 MSIL 코드라고 한다

 

* 공용 타입 시스템(CTS : Common Type System)

   닷넷 호환 언어가 지켜야 할 타입의 표준 규격을 정의

 

* 공용 언어 사양(CLS : Common Language Specification)

   닷넷 호환 언어가 지켜야 할 최소한의 언어 사양을 정의

 

* 메타데이터(Metadata)

   CLR에서 동작하는 실행파일은 완전하게 자기 서술적인 메타데이터를 제공하며,

   외부에서는 이런 정보를 리플렉션이라는 기술을 통해 사용할 수 있다

 

* 어셈블리 = 책, 모듈 = 책 속의 장(챕터)
   어셈블리는 실행되거나 참조 가능한 완성된 단위(.exe, .dll)
   모듈은 어셈블리를 구성하는 실제 코드 단위(.netmodule 등)

* 공용 언어 기반구조(CLI : Common Language Infrastructure)

   마이크로소프트에서 ECMA 표준으로 제출한 공개 규약

 

* 공용 언어 런타임(CLR : Common Language Runtime)

   CLI 사양을 따르는 가장 대표적인 VM으로 마이크로소프트가 개발해 윈도우 운영체제용으로만 배포되고 있다

   [기능 두 가지]

   ㄴ(1) 중간 언어를 JIT 컴파일러를 이용해 기계어 변환

   ㄴ(2) GC

 

* 닷넷 프레임워크 = CLR + 부가 구성 요소

    https://dotnet.microsoft.com/ko-kr/learn/dotnet/what-is-dotnet-framework

 

.NET 프레임워크란 무엇입니까? 소프트웨어 개발 프레임워크.

.NET Framework는 Windows에서 앱을 빌드하고 실행하는 데 사용됩니다. Linux, macOS, Windows, iOS, Android 등을 지원하는 .NET 개발자 플랫폼의 일부입니다.

dotnet.microsoft.com

 

C언어 컴파일 과정
   소스코드 → 전처리기 → 컴파일러 → 어셈블러 → 링커 → 실행파일

C# 컴파일 과정
   소스코드 → 컴파일러 → IL 코드 → CLR(Common Language Runtime) → JIT(Just In Time) 컴파일러 → 기계어 실행

 

   C# 컴파일러는 소스코드를 중간 언어(IL)로 컴파일한다
   CLR이 IL 코드를 JIT 컴파일하여 CPU의 기계어로 변환한 뒤 실행한다

 

* 실습환경

  JetBrains Rider