Common Language Runtime и Common Type Specification в .NET — КиберПедия 

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Common Language Runtime и Common Type Specification в .NET

2017-11-27 123
Common Language Runtime и Common Type Specification в .NET 0.00 из 5.00 0 оценок
Заказать работу

 

СРЕДА CLR

.NET Framework предоставляет среду выполнения (среду CLR), которая выполняет код и предлагает службы, облегчающие процесс разработки.

Центральной частью каркаса.NET является его общеязыковая исполняющая среда, известная как Common Language Runtime (CLR) или.NET runtime. Код, выполняемый под управлением CLR, часто называют управляемым кодом. С точки зрения программирования под термином исполняющая среда может пониматься коллекция внешних служб, которые требуются для выполнения скомпилированной единицы программного кода. Например, при использовании платформы MFC для создания нового приложения разработчики осознают, что их программе требуется библиотека времени выполнения MFC (т.е. mfc42.dll). Другие популярные языки тоже имеют свою исполняющую среду: программисты, использующие язык VB6, к примеру, вынуждены привязываться к одному или двум модулям исполняющей среды (вроде msvbvm60.dll), а разработчики на Java — к виртуальной машине Java (JVM).

Управляемый код(managedcode) пользуется преимуществами среды выполнения и помимо собственно кода содержит метаданные, которые создаются в процессе компиляции и содержат информацию о типах, членах и ссылках, используемых в коде. Метаданные используются средой выполнения:

· для обнаружения классов;

· загрузки классов;

· генерации кода для конкретной платформы;

· обеспечения безопасности.

Common Language Runtime также задает общую систему типов, используемую всеми языками программирования. Это означает, например, что все языки программирования будут оперировать целочисленными данными или данными с плавающей точкой единого формата и единой длины, а представления строк тоже будут едиными для всех языков программирования. За счет единой системы типов достигается более простая интеграция компонентов и кода, написанных на разных языках программирования. В отличие от COM-технологии, также основанной на наборе стандартных типов, но представляемых в бинарном виде, CLR позволяет выполнять интеграцию кода (который может быть написан на различных языках программирования) в режиме дизайна, а не в режиме выполнения.

После компиляции управляемый код содержит метаданные, описывающие сам компонент, а также компоненты, использовавшиеся для создания кода. Среда выполнения проверяет, доступны ли все необходимые ресурсы. Использование метаданных позволяет отказаться от необходимости хранить информацию о компонентах в реестре. Следовательно, при переносе компонента на другой компьютер нам больше не требуется регистрировать этот компонент (за исключением глобальной сборки — global assembly, которую мы рассмотрим ниже), а удаление компонента сводится к простому удалению содержащей его сборки.

Common Type Specification

CommonTypeSystem - часть.NET Framework, формальная спецификация, определяющая, как какой-либо тип (класс, интерфейс, структура, встроенный тип данных) должен быть определён для его правильного выполнения средой.NET. Кроме того, данный стандарт определяет, как определения типов и специальные значения типов представлены в компьютерной памяти. Целью разработки CTS было обеспечение возможности программам, написанным на различных языках программирования, легко обмениваться информацией. Как это принято в языках программирования, тип может быть описан как определение набора допустимых значений (например, «все целые от 0 до 10») и допустимых операций над этими значениями (например, сложение и вычитание).

Функции Common Type System

· Формирует фреймворк, способствующий межъязыковой интеграции, безопасности типов, а также высокой производительности исполнения кода.

· Обеспечивает объектно-ориентированную модель, поддерживающую полную реализацию множества языков программирования.

· Определяет правила, которым должны следовать языки, что в том числе позволяет гарантировать, что объекты, написанные на разных языках могут друг с другом взаимодействовать.

· CTS определяет правила, гарантирующие, что типы данных объектов, написанные на разных языках, смогут взаимодействовать друг с другом.

· CTS определяет правила для видимости типов и доступа к членам типа, то есть CTS утверждает правила, по которым сборки формируют области видимости для типа, а Common Language Runtime дополняет правила видимости.

· CTS определяет правила, управляющие наследованием типов, виртуальными методами и продолжительностью существования объектов.

· Языки, поддерживаемые платформой.NET, могут реализовывать все или некоторые из общих типов данных.

· При округлении дробных значений благодаря фреймворку по умолчанию применяется метод банковского округления. Начиная с версии 2, «симметричное арифметическое округление» («англ. Symmetric Arithmetic Rounding») (округляет до ближайшего числа со стороны нуля) также доступно программистам в качестве дополнительной возможности.


Поделиться с друзьями:

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.039 с.