일반적인 언어 인프라는 무엇입니까?
CLI (Common Language Infrastructure)는 컴퓨터 프로그래밍 언어 상호 운용성을 촉진하는 국제 기술 표준 세트입니다. CLI는 또한 많은 고급 언어가 플랫폼 및 아키텍처와 무관 한 응용 프로그램을 개발할 수 있도록합니다. 이 목적을 위해 그룹화 된 30 개가 넘는 프로그래밍 언어가 있으며 CLI를 준수하기 위해 공통 언어 프로그래밍 사양의 4 개 부서를 사용합니다.
공통 유형 시스템 (CTS)을 사용하여 일련의 데이터 유형 및 작업 세트를 사용하여 프로그래밍 구조에 대한 메타 데이터 정보를 사용하면 언어 교차 코드 작성이 가능합니다. CLI는 언어를 공통 중간 언어 (CIL)로 컴파일하며 CIL에서 응용 프로그램 측면을 하드웨어를 다루는 어셈블리 머신 언어로 전달합니다. 또한, 공통 언어 사양 (CLS)이 있으며, 상호 작용을 찾는 모든 언어로 사용하기 위해 설정된 기본 규칙과로드에 대한 가상 실행 시스템 (VES)이 있습니다.모든 CLI 호환 프로그램에 대한 실행 코드의 ing, 실행 및 생성.
대부분의 CLI 호환 언어는 CLR (Common Language Runtime)을 사용하여 CIL에 직접 컴파일합니다. 컴파일 및 캐시 된 후, 정시 컴파일러는 기존 아키텍처에서 기계 코드를 적절합니다. 어셈블리 머신 코드 건설은 미리 컴파일러로 CLR을 앞두고 건설 할 수 있습니다.
CLI 호환 언어가 객체 특이성을 활용하려면 공통 언어 인프라가 호출 될 때 다른 CLI 호환 언어와 공통된 기능 만 노출되면 객체 만 필요하도록 지정합니다. CTS에서 허용되는 데이터 유형 만 사용하도록 개발 된 코드 구성 요소는 CLI를 준수하고 다른 모든 CLI 호환 언어에 액세스 할 수 있다고합니다. 또한,코드는 CLS에서 제외되므로 검증 가능한 코드 만 CLS를 준수한다고 말할 수 있습니다.
일부 프로그래밍 기능은 컴파일러 및 개발자 모두에게 공통적이며 다른 기능은 컴파일러 만 사용할 수 있습니다. 목록은 길고 유용한 기능으로 가득합니다. 컴파일러에서만 사용할 수있는 기능은 다음과 같습니다. 참조 식별자를 공급하고 키워드 인 이름으로 가상 메소드를 무시할 수있는 키워드입니다. 컴파일러와 개발자 모두가 이용할 수있는 기능에는 다음이 포함되어 있습니다. 자산과 평가자가 모두 "정적"이어야한다고 말하는 수정 자 기능에는 모두 "가상"이어야하며 모두 "인스턴스"여야합니다.
구현 프로그램은 데스크탑, 서버, 모바일 장치 및 게임 콘솔 용입니다. 컴퓨터 비전 향상 프로그램과 저수준 가상 기계 툴킷은 공통 언어 인프라와의 공동 언어에서도 개발되었습니다. 공통 언어 인프라 런타 타임은 시스템 리소스를 할당하고 주변 장치를 효율적으로 호출합니다.플랫폼 독립.