Имя Пароль
Зарегистрироваться


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



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

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

Теги: .NET

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

Перегрузка операторов в Visual C#
Локальные функции
Форматирование, зависимое от культуры
Проверка разрешений, запрашиваемых установленной сборкой
Свойства-наборы
Ресурсы и ресурсные сборки
Назначение значка элементу управления
Удаление и отключение точек прерывания
Свойства BackColor, ForeColor и Text
Организация доступа к данным и работа с объектом DataReader
Создание обработчика для группы событий
Общеязыковая исполняющая среда
Применение XML с объектами DataSet
Реализация метода RemoveStale
Towards Cleaner Code II, a C# GUI Invoke/Async Helper
| .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


     



Rambler's Top100

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

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