Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КонспЛекций_ГСиИО_Козак.doc
Скачиваний:
102
Добавлен:
06.12.2018
Размер:
8.64 Mб
Скачать

Семестр 9 р2. Технологии .Net в разработке приложений систем управления р2: Лекция №4. Основные понятия платформы .Net

Платформа .Net. Строительные блоки .NET (CLR, CTS, CLS). Преимущества С#. Промежуточный язык MSIL. Библиотеки типов, пространства имён. Получение дополнительной информации о сборках.

.NET — это универсальная платформа, которая объединяет в себе серверные и клиентские продукты, призванные облегчить жизнь, как пользователям, так и разработчикам программного обеспечения.

.NET представляет собой собственный способ создания распределенных, настольных и встроенных приложений. .NЕТ не имеет ничего общего с СОМ (кроме мощных средств взаимодействия этих двух технологий). Для типов .NET не нужны ни фабрики классов, ни поддержка IUnknown, ни регистрация в системном реестре. Эти основные элементы СОМ не скрыты — их просто больше нет. Платформа .NET является полностью независимой от используемых языков программирования. Существует возможность использовать несколько .NET - совместимых языков программирования.

Строительные блоки .Net (clr, cts, cls)

Сточки зрения программиста .NET вполне можно рассматривать как новую среду выполнения и новую библиотеку базовых классов. С концептуальной точки зрения отношения между уровнем среды выполнения и библиотекой базовых классов .NET выглядят так, как показано на Рис. 1:

Рис. 15 Отношение между средой выполнения и библиотекой базовых классов .NET

CLR (Common Language Runtime) – это среда выполнения .NET. Ее главная роль – обнаруживать и загружать типы .NET и производить управление ими в соответствии с вашими командами. CLR берет на себя всю низкоуровневую работу — например, автоматическое управление памятью, межъязыковым взаимодействием, развертывание (с отслеживанием версий) различных двоичных библиотек.

Common Type System (CTS - стандартная система типов) CTS полностью описывает все типы данных, поддерживаемые средой выполнения, определяет, как одни типы данных могут взаимодействовать с другими и как они будут представлены в формате метаданных .NET.

Common Language Specification (CLS) — это набор правил, определяющих подмножество общих типов данных, в отношении которых гарантируется, что они безопасны при использовании во всех языках .NET. Если вы создаете типы .NET с использованием только тех возможностей, которые совместимы с CLS, тем самым вы сделаете их пригодными для любых языков .NET.

Помимо спецификаций CLR и CTS/CLS платформа .NET предоставляет в ваше распоряжение также библиотеку базовых классов, доступную из любого языка программирования .NET. Библиотека базовых классов не только прячет обычные низкоуровневые операции, такие как файловый ввод-вывод, обработка графики и взаимодействие с оборудованием компьютера, но и обеспечивает поддержку большого количества служб, используемых в современных приложениях.

Преимущества с#

С# — это язык программирования, разработанный специально для платформы .NET.

В программах на С# не необходимости в работе с указалелями;

Управление памятью производится автоматически.

В С# предусмотрены встроенные синтаксические конструкции для работы с перечислениями, структурами и свойствами классов.

В С# осталась возможность перегружать операторы, унаследованные от C++.

Предусмотрена полная поддержка использования программных интерфейсов

Также предусмотрена полная поддержка аспектно-ориентированных программных технологий (таких как атрибуты). Это позволяет присваивать типам характеристики (что во многом напоминает COM IDL) для описания в будущем поведения данной сущности.

C# компилятор генерирует код, предназначенный для выполнения только в среде .NET. Код предназначенный для работы в среде выполнения – это управляемый код (managed code). Двоичный файл, содержащий управляемый код, называется сборкой (assembly).