Unity 개발에 있어서 알아 두고 싶은 컴파일러의 스즈메(Part0.5~.NET Framework의 개요편~)

먼저



이 기사는 Unity에서 사용되는 컴파일러에 대해 정리한 기사 중 기본 부분인 .NET Framework에 대해 간략하게 정리한 기사입니다. 그 때문에, Part1이 아니라, 확실히 하는 의미로 0.5라고 기재시키고 받았습니다.
  • Part0.7~JIT와 AOT 개요편~
  • Part1~Mono편~
  • Part2~IL2CPP편~
  • Part3~Burst편~

  • .NET과 .NET Framework는 다른가요?



    .NET



    .NET이란 Microsoft가 제공하고 있는 각종의 라이브러리나 기반이 되는 프레임워크 그들을 모두 포함한 통합 개발 환경을 말합니다(IL언어에 대해서는 후술).



    .NET 중에서도 특히 큰 라이브러리가 .NET Framework입니다.

    따라서 .NET Framework를 .NET이라고 부르는 사람도 많습니다.

    .NET Framework



    .NET Framework는

  • 「공통 언어 기반(CLI: Common Language Infrastructure)」이라고 하는, 「언어에 의존하지 않는 개발 환경 및 실행 환경을 제공하는 것」을 목적으로 한, 실행 코드나 실행 환경의 사양을 실장한 대표적인 것이다 "공통 언어 런타임 (CLR : Common Language Runtime)"이라는 프로그램 실행 엔진 (.NET Framework 및 Mono)
  • 기본 클래스 (시스템 등), 라이브러리 및 프레임 워크

  • 로 구성되어 있습니다.



    .NET Framework에서 CLI 호환 실행 환경을 대상으로 하는 언어(C#, VB 등)의 경우는 일단 .NET의 중간 언어(IL:Intermediate Language(별명:CIL,MSIL))로 컴파일됩니다. 앱이나 라이브러리 등은 IL 상태로 배포를 하는 것 같습니다.

    IL은 어셈블리 언어로 정의되며 VES에 의해 JIT에서 실행됩니다.

    처리 흐름





    VES에서 머신어로 변환될 때는 JIT로 행해집니다만, JIT에 대해서는 다음의 기사로 해설하려고 생각합니다.

    마지막으로



    어땠습니까? 나 자신은 지금까지 C#의 언어 기능만을 쫓아가고 있어 기초 부분에는 눈을 돌리지 않았기 때문에, 굉장히 멍청한 상태였습니다. 이번에 이 기사를 써서 자신의 공부가 되었습니다. 이 기사가 나와 같은 초보자에게 도움이되면 다행입니다.

    참고


  • IL 개요
  • 공통 중간 언어
  • .NET은 무엇입니까?
  • 【초보자용】C#.NET이란? C#과의 차이는? 철저 해설
  • .NET Framework 개요
  • 좋은 웹페이지 즐겨찾기