* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Структура .NET-приложений
7 февраля 2009

Чтобы понять, как общеязыковая исполняющая среда контролирует исполнение
кода, необходимо изучить структуру .NET-приложения. Основным блоком .NET-
приложений является сборка (assembly) — самоописываемый набор кода, ресурсов
и метаданных. Содержимое сборки описано в ее декларации (manifest), которая
включает следующие сведения:
• идентификационные данные сборки, такие, как имя и номер версии;
• полный список открытых типов, поддерживаемых сборкой;
• список сборок, необходимых для работы данной сборки;
• список разрешений на доступ к коду, включающий права доступа, требуемые
сборкой, и права, в которых ей будет отказано.
У каждой сборки имеется только одна декларация, которая содержит все сведе-
ния, описывающие эту сборку. Декларация сборки хранится в отдельном файле
либо в одном из модулей сборки.
Сборка также содержит один или несколько модулей. Модуль (module) хранит
код приложения или библиотеки, а также метаданные, описывающие этот код. Во
время компиляции проекта в сборку исходный текст, написанный на языке высо-
кого уровня, транслируется в IL-код. Благодаря такому преобразованию свободно
взаимодействуют программы на разных языках. Например, можно написать на
Visual С# приложение, которое вызывает DLL, разработанную с применением язы-
ка Visual Basic .NET. Перед исполнением оба компонента преобразуются в IL-кол,
что устраняет проблемы с совместимостью языков высокого уровня.
Кроме того, модули содержат типы. Тип — это шаблон кода, инкапсулирующего
некоторые данные и обладающего определенной функциональностью. Видов ти-
пов два: ссылочные типы, или классы, и типы значений, или структуры. Более по-
дробно о них рассказано на занятии 3. Для каждого типа в декларации сборки со-
держится описание, понятное CLR. У типа есть поля, свойства и методы, так или
иначе участвующие в реализации его функциональности. Например, у класса, пред-
ставляющего банковский счет, должны быть поля, свойства и методы, представля-
ющие все функции, необходимые для реализации банковского счета. Поля предо-
ставляют память для хранения определенного типа данных. Классу банковского
счета, скорее всего, понадобится поле для хранения имени вкладчика. Свойства на-
поминают поля, но в отличие от них обычно проверяют значения при их установке
и извлечении. В нашем примере у класса может быть свойство, хранящее остаток
средств на счете. При попытке изменить значение это свойство проверит, не пре-
вышают ли изменения заданный предел, и, если это так, запретит выполнение опе-
рации. Методы представляют поведение классов, например действия, которые они
выполняют над хранимыми данными, либо изменения пользовательского интер-
фейса. Продолжая пример, можно предположить, что у класса банковского счета
будет метод Transfer, который переносит остаток со счета до востребования на де-
позит, а также метод Alert, извещающий пользователя о снижении остатка средств
до критического уровня.

Теги: .NET

Статьи по теме:

Преобразование кодировки символов
Создание производных элементов управления
Наборы
Cosmos – C# Open Source Managed Operating System
Cabinet File (*.CAB) Compression and Extraction – версия 9.9
Организация доступа к данным и работа с объектом DataReader
Классы CTS
Parsing Expression Grammar Support for C# 3.0 Part 1 – PEG Lib and Parser Generator
Тестирование элемента управления
Редактор пользовательского интерфейса
Проверка на уровне формы
Активация и деактивация команд меню
Набор Listeners
Декларативная защита по правам доступа к коду
Создание абстрактных членов
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31


     



Rambler's Top100

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Структура .NET-приложений. Регион сайта: Москва и Санкт-Петербург