티스토리 뷰

[출처: 시작하세요. C# 프로그래밍]


1. IL(Intermediate Language) 코드를 실행하는 CLR(Common Language Runtime)

  1.1 [C# 소스코드] -> Build -> [EXE file]

       : 이 때 [EXE file]는 C# 컴파일러가 삽입한 CLR Loader와 IL 코드로 구성된다.

         이 후 EXE file을 실행하게 되면 CLR이 먼저 로드되어 IL 코드를 실행하게 되는 것.


2. C#은 .Net Framework를 기반으로 IL(Intermediate Language) 코드를 생성하는 컴파일러에 불과하며

   C#을 공부한다는 것은 .Net Framework를 공부한다는 것이다.

   .Net Framework을 공부하는데 C#이 좋은 이유는 Microsoft가 .Net Framework를 위해 만든 언어이기 떄문이다.

   

   - VB.NET 은 기존 비주얼베이직 개발자가 닷넷환경으로 조금더 쉽게 다가설 수 있도록 VB 언어의 기본 문법을 확장하는

     형식으로 발전시켰기 때문에 닷넷을 위해 만들어진 것은 아니다.

   - C++/CLI 역시 동일한 한계를 지니고 있으며, C++ 언어를 바탕으로 닷넷용 응용프로긂을 만들수 있도록 문법을 확장한 

      것 이다.

   - F# 언어는 Microsoft에서 공식적으로 지원하는 닷넷의 함수형 언어이다. 즉, 함수형 언어를 통한 문제 풀이 능력을 더하기

     위해 만들어진 언어일 뿐 .Net Framework를 위한 언어는 아니다.


3. C#과 .Net Framework의 변화

   - 닷넷 버전: 1.0 ~ 1.1

     + 닷넷의 변화 : 최초 버전

     + C#의 변화 : C# 1.0 발표


   - 닷넷 버전: 2.0

     + 닷넷의 변화 : 제네릭 제공

     + C#의 변화 : 제네릭, 익명 함수 문법 추가


   - 닷넷 버전: 3.0 ~ 3.5

     + 닷넷의 변화 :  LINQ, WCF, WPF, WF

     + C#의 변화 : 표현식, 확장 메서드, 익명 타입을 위한 문법을 추가하고 LINQ 구문을 언어적으로 지원


   - 닷넷 버전: 4.0

     + 닷넷의 변화 : DLR(Dynamic Language Runtime) 추가 

     + C#의 변화 : 동적 언어와의 바인딩을 지원하도록 Dynamic 예약어 추가


   - 닷넷 버전: 5.0

     + 닷넷의 변화 : 비동기 지원

     + C#의 변화 : 비동기를 위한 async/await 예약어 추가

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함