Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Общеязыковая инфраструктура CLI

Поиск

 

К удивлению большинства разработчиков, сборки.NET могут разрабатываться и выполняться в средах операционных систем производства не только самой корпорации Microsoft, а в частности: на ОС Mac OS X, различных дистрибутивах Linux, Solaris, а также на устройствах типа iPhone и iPad производства корпорации Apple (через API-интерфейс MonoTouch *).Чтобы понять, что делает подобное возможным, необходимо рассмотреть еще одну используемую в мире.NET аббревиатуру — CLI, которая расшифровывается как Common Language Infrastructure (и переводится как «общеязыковая инфраструктура»).

Вместе с языком программирования С# и платформой.NET в Microsoft был также разработан набор официальных документов с описанием синтаксиса и семантики языков С# и CIL, формата сборок.NET, ключевых пространств имён и технических деталей работы гипотетического механизма исполняющей среды.NET (названного виртуальной системой выполненияVirtual Execution System (VES)).

 

Все эти документы были поданы в организацию Ecma International (http://www.ecma-international.org) и утверждены в качестве официальных международных стандартов. Среди них наибольший интерес представляют:

  • документ ЕСМА-334, в котором содержится спецификация языка С#;
  • документ ЕСМА-335, в котором содержится спецификация общеязыковой инфраструктуры (CLI).

 

Важность этих документов становится очевидной с пониманием того факта, что они предоставляют третьим сторонам возможность создавать дистрибутивы платформы.NET для любого количества операционных систем и/или процессоров. Среди этих двух спецификаций документ ЕСМА-335 является более «объёмным», причём настолько, что был разбит на шесть разделов, которые перечислены в следующей таблице:

 

Разделы документа ЕСМА-335 Предназначение
Раздел I. Концепции и архитектура В этом разделе описана общая архитектура CLI, в том числе правила CTS и CLS и технические детали функционирования механизма среды выполнения.NET
Раздел II. Определение метаданных и семантика В этом разделе описаны детали метаданных и формат сборок в.NET
Раздел III. Набор инструкций CIL В этом разделе описан синтаксис и семантика кода CIL
Раздел IV. Профили и библиотеки В этом разделе дается общий обзор тех минимальных и полных библиотек классов, которые должны поддерживаться в дистрибутиве.NET
Раздел V В этом разделе описан формат обмена деталями отладки
Раздел VI. Дополнения В этом разделе представлена коллекция дополнительных и более конкретных деталей, таких как указания по проектированию библиотек классов и детали по реализации компилятора CIL

 

Следует иметь в виду, что в разделе IV («Профили и библиотеки») описан лишь минимальный набор пространств имён, в которых содержатся ожидаемые от дистрибутива CLI службы (наподобие коллекций, консольного ввода-вывода, файлового ввода-вывода, многопоточной обработки, рефлексии, сетевого доступа, ключевых средств защиты и возможностей для манипулирования XML-данными). Пространства имён, которые упрощают разработку веб-приложений (ASP.NET), доступ к базам данных (ADO.NET) и создание настольных приложений с графическим пользовательским интерфейсом (Windows Forms и Windows Presentation Foundation) в CLI не описаны.

В главных дистрибутивах.NET библиотеки CLI дополняются совместимыми с Microsoft эквивалентами ASP.NET, ADO.NET и Windows Forms, чтобы предоставлять полнофункциональные платформы для разработки приложений производственного уровня. На сегодняшний день популярностью пользуются две основных реализации CLI (помимо самого предлагаемого Microsoft и рассчитанного на Windows решения).

 

ПРИМЕЧАНИЕ: MonoTouch ― платформа, позволяющая запускать приложения разработанные с и использованием.NET на различных мобильных устройствах в том числе: смартфонах (коммуникаторах) и планшетных компьютерах не под управлением Windows.

Компилятор «csc.exe»

Компилятор «csc.exe»

 



Поделиться:


Последнее изменение этой страницы: 2016-12-28; просмотров: 281; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.255.247 (0.006 с.)