Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры C#.doc
Скачиваний:
16
Добавлен:
22.09.2019
Размер:
472.58 Кб
Скачать

2.Компоненты платформы net.

Microsoft.NET включает в себя следующие компоненты:

  • Инфраструктура .Net ( .NET FrameWork) и инструментальные средства (это VisualStudio);

  • Службы .NET;

  • Программное обеспечение для работы на различных устройствах и платформах;

  • Опыт пользователя;

Инфраструктура .NET и инструментальные средства. Служат для создания и эксплуатации служб нового поколения. Примерами таких средств могут быть: .NET FrameWork, Visual Studio.NET (её новая версия VS2005), семейство корпоративных серверов Enterprise Servers (для взаимодействия с Web).

В Enterprise Servers входят компоненты к примеру:

  • MS Exchange 2000 Server– решение для обеспечения совместной работы пользователей и обмене информацией между ними;

  • MS Mobile Information 2001 Server– средство для доставки информации с серверов на портативные цифровые устройства, включая сотовые телефоны;

  • MS SQL Server 2000– средство, обеспечивающее хранение, поиск и анализ структурированной информации для Web-приложений.

Службы .Net. Одной из целей создания платформы .NET являлось заимствование принципов работы операционной системы по отношению к среде Internet. Сеть Internet, по сути, сама стала своеобразной операционной системой. Для реализации этой идеи требуется огромное количество служб. Например служба Passport.NET позволяет своим пользователям применять одну комбинацию имя пользователя/пароль для доступа к разнообразным службам, приложениям, средам разработки. Служба электронной почты Hotmail фирмы Microsoft уже использует Passport.NET для аутенфикации пользователей. Другие службы и сайты поддерживают Passport.NET. Пользователь знает только свой идентификатор и пароль даже для совершения покупок на различных сайтах виртуальных магазинов.

Программное обеспечение для работы на различных устройствах и платформах.

Платформа .NET устраняет ограничение взаимодействия с Internet, связанные с несовместимостью различных устройств. Теперь данные доступны и гарантируется их безопасность. Обеспечивается полная независимость от типа используемых устройств. Это может быть и карманный компьютер, и мобильный телефон, и персональный компьютер в офисе. Соответствующие интеллектуальные приложения взаимодействуют через Internet с помощью такого специального ПО.

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

3.Модель выполнения приложения в среде .Net Framework. Промежуточный язык Microsoft (Microsoft Intermediate Language, msil). Сборки.

Что такое .Net Framework? Это компонент платформы .NET, среда для разработки и выполнения распределенных приложений, основанных на использовании компонентных объектов. Она позволяет «мирно» существовать различным языкам программирования и обеспечивает безопасность, переносимость программ и общую модель программирования для платформы Windows.

.NET Framework не ограничена применением в Windows, т.е. программы, написанные для нее, можно затем переносить в другие среды.

Язык C# разработан фирмой Microsoft для создания кода, выполняющегося в среде .NET Framework. В этой среде определены библиотеки, используемые языком C#.

Среда .NET Framework состоит из следующих компонентов:

  • Common Language Runtime(CLR)–не зависящая от языка среда выполнения;

  • Основная структура или базовая библиотека классов(Base Framework);

  • Шаблоны(типы) приложений (Application Framework)

Модель выполнения приложений в среде .NET Framework. Сборка.

Исходный код может быть написан на нескольких языках программирования. Код компилируется .NET – компилятором (он генерирует код для среды .NET). в результате компиляции получается не используемый код, а файл, который содержит специальный псевдокод ,именуемый промежуточным языком Microsoft (Microsoft Intermediate Language – MSIL). MSIL определяет набор переносимых инструкций (арифметические и логические действия, контроль данных), которые не зависят от типа процессора. По сути, он определяет переносимость ассемблера. Хотя концептуально MSIL подобен байт-коду Java, это не одно и то же.

Цель CLR- системы – при выполнении программы перевести ее промежуточный код в исполняемый. Таким образом, программа, подвергнутая MSIL- компиляции, может быть выполнена в любой среде, для которой реализована CLR – система. В этом частично и состоит способность среды .NET Framework добиваться переносимости программ.

Код, написанный на промежуточном языке Microsoft, переводится в исполняемый с помощью YIT- компилятора (just-in-time), означающего выполнение «точно» к нужному моменту. Это отражает факт компиляции кода только при необходимости. При этом совершенно не используется интерпретатор.

В результате компиляции помимо MSIL – кода образуются и метаданные. Они содержатся в том же файле, где хранится MSIL – код.

В общем случае при написании С#- программы создается код, называемый управляемым. Управляемый код выполняется под управлением CLR-системы. Под неуправляемым кодом понимается Windows-программы (например функции Win32API), созданные для появления среды .NET Framework. Их код не выполнялся CLR-системой. Управляемые и неуправляемые коды могут работать вместе.

Обзор двоичных файлов .NET(«Сборки»).

Когда с помощью компилятора для платформы .NET создается модуль DLL или EXE, содержимое этого модуля – это так называемая сборка (assembly) на языке IL. Это новый формат исполняемых файлов.

Помимо инструкций IL, двоичные модули .NET содержат также метаданные, которые подробно описывают все типы, используемые в модуле. Метаданные описывают не только типы, используемые в сборке, но и саму сборку. Эта часть метаданных называется манифестом (manifest). В манифесте содержится информация о текущей версии сборки, о поддерживаемом естественном языке (англ., русск.), а также список всех внешних сборок, которые потребуются для нормального выполнения.

В подавляющем большинстве случаев двойной файл .NET и сборка – это одно и то же и между ними существует отношение «один-к-одному» (чаще всего это файл .NET DLL). В сборке из одного файла этот файл содержит и манифест, и метаданные, и инструкции IL.

В сборке из нескольких двоичных файлов каждый двоичный файл называется модулем (module). В таких сборках один из двоичных файлов должен содержать манифест (сценарий) сборки (в нем могут находиться и другие данные, в том числе инструкции IL). Все остальные модули могут содержать только метаданные типов и инструкции IL.

Зачем может потребоваться создание многофайловой сборки?

Одна причина – большая гибкость при развертывании приложения. Например, идет обращение к удаленной сборке, которая должна быть загружена на его локальный компьютер. Среда загрузит лишь те модули сборки, которые действительно необходимы. Такое решение позволит избежать ненужного сетевого трафика и увеличить скорость работы программы.

Развертывание. CLR-приложение может быть развернуто или доставлено на нужную платформу, отличную от той, на которой оно было разработано. Для этого оно сначала должно быть упаковано. После этого приложение готово для распространения (упакованный файл – это .сав-файл, содержит только один файл CLR).

Итак, для установки CLR-приложения на другую платформу, нужно выполнить два основных действия: упаковку и распространение (развертывание). Для распространения используются методы:

ХСРY (проще, чем инсталляция);

Загрузка кода с удаленного компьютера (с помощью браузера);

Установочные пакеты (например, Windows Installer) .