? Метаданные (MetaData) – это данные, которые содержит в себе каждая сборка. Благодаря этому механизму любая сборка и вообще весь код. NET являются самодокументированными. Состав метаданных следует рассмотреть подробнее.
• Описание сборки – идентификаторы (имя, версия), зависимость от других сборок, ограничения безопасности.
• Описания типов, объявленных в данной сборке.
• Зона видимости, базовый класс и реализуемые интерфейсы.
• Методы, поля, свойства, внутренние типы и события.
• Атрибуты.
? Пространства имен (Namespaces) – логическая иерархическая система имен, позволяющая группировать имена РІ логически Рё функционально связанные РіСЂСѓРїРїС‹. Пространство имен – это инструмент, который используется РІРѕ время разработки, Рё РѕРЅ РЅРµ зависит РѕС‚ физического положения РєРѕРґР° РІ том или РёРЅРѕРј файле. Рмена, объединенные РІ РѕРґРЅРѕРј логическом блоке (например, System.Data), РјРѕРіСѓС‚ физически располагаться РІ разных файлах. РџСЂРё помощи директивы Imports разработчик может подключать Рє модулю то или РёРЅРѕРµ пространство имен. Например, если РІ программе часто РїСЂРѕРёСЃС…РѕРґРёС‚ ссылка РЅР° имена System.Drawing.Image Рё System.Drawing.Colors, то, поместив РІ самом начале файла (РґРѕ любого РґСЂСѓРіРѕРіРѕ РєРѕРґР°) директиву Imports System.Drawing, разработчик может обращаться Рє этим именам РІ РєРѕРґРµ без префикса. Пространство имен РїРѕ своему назначению чем-то схоже СЃ иерархией пакетов РІ Java.
Файлы и сборки (библиотеки) CF
В табл. 6.1 приведен список файлов. NET CF и их предназначение.
Таблица 6.1. Файлы. NET CF
РџР РМЕЧАНРР•.
Не все файлы из вышеприведенной таблицы можно найти на устройстве после установки на него. NET CF. Сборки System.SR.dll, System.Data.SqlClient.dll и System.Data.SqlServerCe.dll необходимо устанавливать отдельно. Мало того, автоматически устанавливаемые файлы также будут присутствовать не все. Например, попытка найти на устройстве файл System.Drawing.dll будет неудачной, но вы можете найти GAC_System.Drawing_v1_0_5000_ 0_ cneutral_1.dll. Такому переименованию подвергаются файлы, которые устанавливаются в Global Assembly Cash (GAC). Установленные в GAC файлы предназначены для совместного использования, и CF производит дополнительные проверки при их загрузке и удалении из памяти.
Важные классы и пространства имен CF
В табл. 6.2. перечисляются основные пространства имен, с которыми будет иметь дело разработчик.
Таблица 6.2. Важные пространства имен
VB.NET: Основные возможности и отличия от VB 6
Microsoft взяла Р·Р° РѕСЃРЅРѕРІСѓ для разработки приложений РІ технологии. NET РґРІР° языка – VB.NET Рё C#.NET. Если синтаксис языка C# является почти полной копией синтаксиса Java, то VB.NET унаследовал СЃРІРѕР№ синтаксис РѕС‚ старого Visual Basic. Рто сильно облегчило переход Рє новым технологиям тем, кто привык Рє «обычному» VB. РќРѕ если Visual Basic 6 всегда считался легким для освоения «игрушечным» языком, РІ котором серьезные возможности недоступны или сильно урезаны, то РїРѕ отношению Рє VB.NET это совершенно неверно. Поскольку VB.NET реализует РІСЃРµ межъязыковые соглашения. NET Framework, то РїРѕ функциональности РѕРЅ, казалось Р±С‹, совершенно РЅРµ должен отличаться РѕС‚ C#. РќР° самом деле, это, Рє сожалению, РЅРµ так. Р’ следующем СЃРїРёСЃРєРµ приведены новые возможности языка VB.NET.
? Структурированная обработка исключений.
? Полная поддержка объектно-ориентированного программирования.
? Полная интеграция с. NET Framework.
? Возможность программирования с новым типом объектно-ориентированных указателей на функции (delegates).
Отличия eVB и Visual Basic для. NET
В основном отличия VB.NET от eVB связаны с интеграцией языка VB с Compact Framework и определяются именно внутренней структурой самой CF.
Типы данных
В eVB был один-единственный тип данных на все случаи жизни, Variant, который достался eVB по наследству от VB Script. Visual Basic.NET, как и всякий серьезный язык, использует множество разных типов данных, но при этом не использует Variant. В табл. 6.3 приведены типы данных, используемые в VB.NET.
Таблица 6.3. Типы данных в VB.NET
Кроме добавления различных типов данных, в VB.NET изменились некоторые правила работы с данными. Теперь при объявлении переменной можно одновременно присвоить ей значение, как показано в следующем фрагменте кода.
Dim strMyString As String = В«Рто РјРѕСЏ строка»
В VB.NET невозможно объявить строку с ограниченной длиной, а при объявлении массива его нижняя граница обязательно должна быть равна нулю.
Язык
Некоторые отличия коснулись и самого языка. В отличие от eVB, в VB.NET при работе с объектами нельзя присваивать и читать значения свойства по умолчанию. Подобного свойства просто нет, и доступ к любому свойству объекта должен осуществляться в общепринятой форме, через точку, как показано в следующем фрагменте кода.
Label1.Text = «Дата»
При вызове процедур и функций VB.NET приблизился к большинству языков программирования, которые помещают аргументы в скобки. Теперь аргументы функций и процедур в обязательном порядке должны помещаться в скобки, как показано в следующем фрагменте кода.