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


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



Основы CLS
15 апреля 2009

Нет необходимости доказывать, что одни и те же программные конструкции в раз-
ных языках выглядят абсолютно по-разному. Например, в С# и Delphi объединение
строк (конкатенация) производится с помощью оператора плюс "+", а в Visual Basic
для этой цели используется амперсант "&". Для среды выполнения .NET такая разни-
ца в синтаксисе абсолютно безразлична: все равно соответствующие компиляторы
создадут одинаковый код IL. Однако языки программирования отличаются не только
синтаксисом, но и возможностями. Например, в одних языках программирования
разрешена перегрузка операторов, а в других — нет. Одни языки могут использовать
беззнаковые типы данных, в других такие типы данных не предусмотрены. Поэтому
нужны некие единые правила для всех языков .NET.
Если им следовать, то программ-
ные модули, написанные на разных языках, будут нормально взаимодействовать друг
с другом. Такой набор правил определен в универсальной спецификации языка (CLS).
Набор правил CLS не только гарантирует нормальное взаимодействие блоков кода,
созданных на разных языках, но и определяет минимальные требования, которые
предъявляются к любому компилятору .NET. Необходимо помнить, что CLS — это
лишь часть тех возможностей, которые определены в CTS.
Правилам CLS должны удовлетворять и инструментальные средства среды разра-
ботки — если мы хотим обеспечить межъязыковое взаимодействие, они должны гене-
рировать только такой код, который соответствует требованиям CLS. У каждого пра-
вила CLS есть название (например, CLS Rule 6). Вот пример одного из самых важных
правил — правило номер 1.
Правило 1. Правила CLS относятся только к частям типа, предназначенным для
взаимодействия за пределами сборки, в которой они определены.
Из этого правила следует, что при реализации какого-либо типа можно сколько
угодно нарушать правила CLS — это ни на что не повлияет. Например, можно создать
приложение .NET, которое взаимодействует с внешним миром с помощью трех клас-
сов, и в каждом из этих классов только одна функция. Правилам CLS в этом случае
должны удовлетворять только три этих функции (область видимости, соглашения об
именовании, типы параметров и т.д.). Во внутренней реализации этих функций, клас-
сов или приложения в целом может быть сколько угодно отступлений от правил CLS.

Теги: borland delphi vista, borland delphi, SendTo, Windows Borland Delphi

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

DateTimeHandling
Протокол UDP
Свойство Lines
Свойство ChildBand
Свойство PageNumber
Параметры технологических процессов обработки данных
Параметры сокета
Компонент TButton
Конструкция IF-ELSE
Исполнительные информационные системы (Executive Support System)
Использование сокетов в Delphi
Свойство Zoom
Передача данных при использовании UDP
Некоторые вопросы интеграции документационных систем и информационных технологий
BeforeAutoCreate
| Borland Delphi | vitek |
 


Пн Вт Ср Чт Пт Сб Вс
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 | Borland Delphi | Основы CLS. Регион сайта: Москва и Санкт-Петербург