Compact Framework
Compact Framework
NET Compact Framework это подмножество полной версии. NET Framework, которое предоставляет программисту большинство возможностей, присутствующих в полной версии для настольных и серверных машин. К этим возможностям относятся межъязыковая среда выполнения, JIT-компиляция, защита кода и управление памятью при помощи сборщика мусора. Также в. NET CF разработчик может использовать Windows Forms, средства доступа к данным, XML и веб-сервисы на основе XML.
Application domains
Каждое приложение, запускаемое под управлением. NET Compact Framework, выполняется в некоторой совокупности ресурсов системы, называемой доменом приложения. Функционально домен приложения подобен процессу для приложений Win32, но в одном реальном процессе Win32 может быть запущено несколько доменов приложений.
Управление памятью
В.NET Compact Framework управление памятью оптимизировано таким образом, чтобы как можно меньше загружать память и ресурсы процессора. В частности, такая часть. NET Framework, как native image cache , в Compact Framework отсутствует.
Сборка мусора
Сборка мусора в. NET Compact Framework также подчинена оптимизации использования памяти. Сборщик мусора гарантирует, что вся память, захваченная приложением, будет корректно освобождена после завершения его работы.
Основные отличия между базовой версией. NET Framework и Compact Framework
Как уже говорилось ранее, разница в версиях. NET не так уж велика, но все же существует. Основные отличия перечислены в следующем списке.
1. CLR в версии CF составляет около 12 % по объему от настольной версии.
2. Взаимодействие с COM-объектами ограничено. Из управляемого кода невозможно создавать COM-объекты или вызывать ActiveX-компоненты. Непосредственный доступ к API Windows CE также невозможен. Но, используя Platform Invokation Service (PInvoke), разработчик может вызывать функции из DLL, в которых, в свою очередь, описывать вызов функций API.
3. Взаимодействие с данными происходит через мобильную реализацию ADO.NET и SQL Server CE.NET Data Provider
4. В CF не поддерживается ASP.NET.
5. Поддержка XML ограничена из соображений экономии памяти. Не поддерживается XML sсhema validation.
Некоторые важные термины и понятия
В этом разделе будут рассмотрены наиболее важные концепции технологии. NET, которые необходимо знать для дальнейшей работы.
? В технологии. NET не принято говорить о библиотеках, компонентах или модулях. Для обозначения некоторой наименьшей единицы построения приложений принят термин «сборка». Сборка (assembly) – наименьший логический модуль в системе. NET, относительно которого работают правила разграничения доступа и кэширования загрузки.
? Метаданные (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. Важные пространства имен
Данный текст является ознакомительным фрагментом.