Microsoft .Net CLR의 다음 단계

.Net Framework를 고정하는 가상 머신 인 Microsoft의 Common Language Runtime이 새롭게 출시 될 예정이며, 회사는 CLR을보다 효율적이고 확장 가능하게 만들 계획을 발표했습니다.

마이크로 소프트의 C # 수석 디자이너 인 매즈 토르 거슨 (Mads Torgersen)은 이러한 현대화의 핵심은 CLR 기반의 중간 언어 인 IL (이는 10 년 동안 업그레이드되지 않음)을 개선하는 것이라고 말했습니다. 이 회사는 IL을 개선하고 CLR을 프로그래밍 언어에 대한보다 풍부한 대상으로 만들고자합니다. 

CLR의 목표는 .Net 프로그램을 효율적으로 실행하는 것입니다. 현재 .Net의 가장 큰 문제는 런타임 자체의 확장성에 내재 된 한계라고 Microsoft의 수석 소프트웨어 엔지니어 인 Ben Watson이 말했습니다. CLR은 원래의 의도와 디자인을 넘어서고 있습니다. Watson은 여러 기가 바이트의 코드가로드되면 CLR에 내장 된 알고리즘이 무너지기 시작한다고 설명했습니다. 

임박한 개선 사항 중 하나는 더 안전하고 성능이 뛰어난 저수준 코드를 달성하기위한 언어 및 프레임 워크 기능을 제공하는 새로운 유형 인 "스팬 티"로 발음되는 Span을 포함합니다. Span의 "t"는 유형 매개 변수를 의미합니다. Span은 C # 및 기타 언어에서 많은 양의 데이터를 복사하거나 가비지 수집을 위해 일시 ​​중지 할 필요가없는보다 효율적인 코드를 만드는 데 사용될 것이라고 Torgersen은 말했습니다. CLR의 새 버전은 속도 향상을 위해 Span에 대한 "내부 지식"을 갖게됩니다. Span은 .Net Framework의 다음 몇 가지 릴리스에 걸쳐 롤아웃됩니다. 

Java 세계의 JVM에 대응하는 Microsoft의 대응 물인 CLR은 C #, Visual Basic 및 F #을 포함한 .Net 언어의 코드 관리를 제공합니다. 소스 코드는 언어 컴파일러에 의해 IL 코드로 컴파일됩니다. CLR은 프로그램이 실행되는 동안 IL을 실행하고 출력을 기계어 코드로 변환하여 프로그램을 실행합니다. CLR은 자동 메모리 관리 및 형식 안전을 포함한 다른 서비스를 제공하므로 프로그래머가 이러한 서비스를 제공하지 않아도됩니다.