Ресурсы и рабочая область

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

С точки зрения модуля, базирующегося на ресурсах, есть только одна рабочая область, которая постоянно открыта для работы все время, пока выполняется модуль. При активизации модуля ресурсов рабочая область автоматически открывается, а закрывается при закрытии платформы. Если для вашего модуля необходим модуль ресурсов, то он будет запущен перед запуском вашего модуля, и тогда рабочая область станет доступной.

Рабочая область содержит набор ресурсов. С точки зрения пользователя ресурсы бывают трех видов: проекты, папки и файлы. Проект - это набор любого количества файлов и папок. Он является контейнером для других ресурсов, относящихся к заданной области. Папки и файлы аналогичны каталогам и файлам в файловой системе. В папке могут содержаться файлы или другие папки. В файле содержится произвольная последовательность байт. Содержимое файла не интерпретируется платформой.

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

В состав рабочей среды может входить любое число проектов, каждый из которых можно сохранить в отдельном расположении на диске.

В пространстве ресурсов рабочей области всегда учитывается регистр символов и сохраняются все варианты. Таким образом, в рабочей области могут существовать ресурсы уровня сестер, имена которых различаются только регистром символов. Кроме того, рабочая область не накладывает ограничения на допустимые символы в именах ресурсов, длину имен ресурсов, а также размер ресурсов на диске. Обратите внимание, что в случае сохранения ресурсов на диске, в котором регистр символов не учитывается, либо отсутствуют ограничения имен ресурсов, соответствующие ограничения появятся непосредственно при создании ресурсов или внесении в них изменений.

Пример дерева ресурсов

Приведенное ниже дерево (представленное в панели Навигатор рабочей среды) показывает типичную иерархию ресурсов рабочей среды. Корень дерева (подразумеваемый) - это корень рабочей среды. Проекты являются прямыми потомками корня. Каждый узел (не корневой) - это ресурс одного из трех видов, имена сестринских ресурсов различаются.

Навигатор с примером рабочей области

Имена ресурсов - произвольные строки (почти произвольные -- они должны быть допустимыми именами файлов). Сама платформа имен не диктует и особого значения каким-либо именам не придает.  (Единственное исключение - нельзя называть проект ".metadata" - это имя зарезервировано для служебного использования.)

В проектах могут содержаться папки и файлы, но не другие проекты. Проекты и папки подобны каталогам в файловой системе.  Когда вы удаляете проект, система спросит вас, хотите ли вы удалить все содержащиеся в нем папки и файлы.  Удаление папки из проекта подразумевает удаление всех находящихся в ней папок и файлов. Удаление файла аналогично удалению файла в файловой системе.