Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 281

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 275 276 277 278 279 280 < 281 > 282 283 284 285 286 287 .. 404 >> Следующая


Каждый нз операторов, заключенных в квадратные скобки н имеющих вид !assembly: AasembiyXxxxx], представляет собой атрибут, т. е. специальный элемент С#, который более подробно рассматривается й следующей главе. В данный момент вполне достаточно знать, что каждый из этих операторов задает значение какого-либо конкретного свойства модуля. Слово assembly:, расположенное в начале каждого атрибута, сообщает системе, что следующая далее директива имеет отношение к самому модулю, а не к классу, методу или какой-либо другой части программы.

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

[assembly: AssemblyTitle('MyCompany Shapes Class Library")]

[assembly; AssemblyDesoription('Classes for Manipulation of Shapes')] [assembly: AssemblyConfiguration("Enterprise Version')]

[assembly: AssemblyCompany('MyCompany, Inc.')]

[assembly: AssemblyProduct('Shapes')]

[assembly: AssemblyCopyright('Copyright 2001, MyCompany, Inc.')]

[assembly: AssemblyTrademark(’Shapes is a trademark of MyCompany, Inc.')]

Атрибут Assembly Culture касается национального языка, который используется для данного модуля, и еслн таковой задан, то он должен следовать специальным сокращениям в соответствии с международным стандартом. Более подробную информацию МОЖНО найти В пространстве имен System.Globalization и в темах, посвященных культуре онлайновой документации .NET Framework. Не требуется задавать этот атрибут до тех пор, пока вы не распространяете версии вашего компонента, работающие на различных языках; еслн же этот атрибут задан, то система выполнения программ .NET начинает автоматически искать версию модуля, которая соответствует текущему значению, установленному в системе. 11апрнмер, во Франции будут выводиться сообщения на французском языке (для чего будут
Модули .NET

601

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

Раз эти атрибуты появляются в файле Asserablyinfo.cs, они будут также включены в манифест модуля. Если теперь снова взглянуть на манифест shapes.dll, то МОЖНО Обнаружить следующую Строку В разделе .assembly Shapes:

.custom instance void [mscorlib)System.Reflection.AssembLy'TitleAttribute:: •ctor(string) - ( 01 00 00 00 00 )

Эта строка указывает на то, что в модуле содержится атрибут AssemblyTitle. Если файл shapes.cs будет откомпилирован из командной строки без использования файла Assembly info, сз, то такая строка в манифесте будет отсутствовать.

Номера версий

Номер версии в .NET Framework состоит из четырех частей, как показано ниже:

Major version Minor version Build Number
(старшин (младший (номер Revision
номер версии) номер версии) построения) (исправление)

Первые две части номера, скорее всего, знакомы вам как пользователю потребительского программного обеспечения — это старший номер версии и младший номер версии, как напрнмер в shapes версии 1.0 (где 1 — старший номер версии, а 0 — младший).

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

Номер исправления дает еше один уровень детализации и предназначается для нумерации “заплаток” или исправленных ошибок в данном модуле, который совершенно ничем не отличается от своего предшественника, кроме как этой единственной исправленной ошибкой.

Атрибуты версий

В iidasm можно просмотреть атрибуты версии модулей. Взгляните па манифест файла shapes.dll, и вы увидите, что для всех модулей, на который ссылается названный манифест, внутри каждого блока .assembly существует директива .ver для данного модуля.

Информация о номере версии внешних модулей, на которые ссылается данный модуль, например, на модули system.Хххх и ua CLR (mscorlib), имеет одинаковый вид. Это происходит потому, что система выполнения программ .NET использует номера версий, хранящиеся в модулях, для проверки совместимости. Мы подробнее остановимся на этом вопросе, когда перейдем к обсуждению проблемы совместимости версий.

Если нами использовался компилятор командной строки (esc), то в строке с директивой .ver для модуля shapes будут содержаться одни нули:

.ver 0:0:0:0
602 Глава 21

Это происходит потому, что до сих пор модулю shapes не присвоен никакой номер версии. Еслн же вы используете Visual Studio.NET, то вы, вероятно, сможете увидеть приблизительно следующий номер версии:
Предыдущая << 1 .. 275 276 277 278 279 280 < 281 > 282 283 284 285 286 287 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.