Библиотека Windows 7 Libraries .NET Sample Library (ч.2)
Это вторая статья в цикле, посвященном
Что дают библиотеки в Windows 7 пользователям?
Чтобы лучше понять концепцию библиотек в Windows 7, необходимо заглянуть в историю — что было до Windows 7. Ранние версии Windows, такие как Windows Vista и XP, имели комплекты специальных папок, в которых пользователи хранили свою информацию, например, "Мои документы" или "Мои рисунки". В Windows Vista эти специальные папки автоматически индексировались, чтобы сделать поиск внутри этих папок максимально эффективным для конечного пользователя. Несмотря на очевидные удобства такого подхода, многие пользователи, и я в том числе, разбрасывают свои файлы по всему компьютеру в различных местах, например, c:\temp, d:\Birthday2008\pictures, а то и вообще на удалённом носителе. Это затрудняет индексирование и вообще отрицательно сказывается на результатах поисковых запросов, частенько устраивая пользователю настоящие приключения с розыском нужных данных.
Windows 7 с помощью библиотек помогает решить проблемы с неупорядоченными данными, предоставляя пользователю полный контроль над структурой папок. Это означает, что в Windows 7 можно заранее определить, какие папки вносить в структуру библиотек документов. Это относится к любой библиотеке. Таким образом, можно утверждать, что библиотеки — это набор папок, определённых пользователем. Включая папки в библиотеки, пользователи сообщают системе, где расположены важные данные. Система индексирует указанные папки, включая для них опции быстрого поиска и упорядочивания на основе свойств файлов.
Пользователи Windows 7 используют библиотеки для управления своими документами, музыкой, изображениями и другим контентом. Как видно в Windows Explorer и общем файловом диалоге, библиотеки — неотъемлимая часть оболочки Windows. Эта интеграция очень важна, поскольку обеспечивает пользователям возможность просмотра и организации файлов совершенно так же, как и в самой обыкновенной папке, что не требует переучивания. Щелкнув по библиотеке документов, пользователь получает доступ к своим документам. Больше того, благодаря интеграции в оболочку, пользователи могут осуществлять поиск, фильтруя результаты по дате, типу или автору, как в Windows Explorer, так и в общем файловом диалоге. Другими словами, пользуясь библиотеками, пользователи получают в своё распоряжение гибкое индексируемое хранилище. Рисунок ниже демонстрирует интеграцию нескольких папок в единую библиотеку, богатые возможности поиска и основные элементы Windows Explorer в Windows 7.
Что же такое библиотека?
Во многих смыслах библиотека мало чем отличается от обычной папки. Как говорилось выше, когда пользователь открывает библиотеку, он видит несколько файлов и/или папок. В отличие от папки, библиотека может показывать файлы, хранящиеся в нескольких папках одновременно. Это небольшое, но важное отличие. Библиотеки не хранят объекты. Они следят за содержимым папок, в которых расположены файлы пользователя, и обеспечивают централизованный доступ и богатые возможности сортировки (по типу, дате или автору) для всего совокупного контента. Библиотеки позволяют сместить фокус на информацию, а не на работу файловой системы.
По умолчанию в Windows 7 есть одна главная библиотека, содержащая четыре библиотеки второго уровня — документы, музыка, изображения и видео. Пользователи могут сохранять файлы прямо в соответствующую библиотеку, и хотя библиотеки не являются папками файловой системы в привычном смысле, они всё же имеют соотнесённое пространство в файловой системе, куда можно сохранять файлы. Каждая библиотека содержит два физических адреса: личная папка пользователя (по умолчанию
Чтобы папка была успешно добавлена в библиотеку, необходимо, чтобы её можно было индексировать локально, на удалённом компьютере с Windows или на сервере, где работает индексация Windows Search. Для поддержания высоких стандартов качества работы поиска в оболочке Windows, добавлять неиндексируемые вложенные папки нельзя.
Что ещё нужно знать разработчикам о библиотеках?
Теперь, когда смысл существования библиотек ясен, программистам следует понять, как реализовать поддержку библиотек в создаваемых приложениях. Это очень важно, поскольку используя библиотеки, пользователи информируют систему о критичности тех или иных данных. Это позволяет разработчику организовывать доступ к пользовательским библиотекам и их использование, экономя время и силы на отдельную организацию хранения данных для своей программы.
Вы можете пользоваться новым IShellLibrary API для того, чтобы ваша программа могла манипулировать библиотеками. Это поможет программам постоянно синхронизировать пользовательские файлы, и Windows, как только произойдёт изменение данных в структуре библиотек, сообщит об этом программе, которая пользуется библиотекой. Для нас, программистов, это мощный инструмент, в то же время налагающий большую ответственность.
Ну а в следующей статье мы поговорим о низкоуровневой архитектуре библиотек и поглубже заглянем в недра API.
Источник:
Перевод: Galaxer
По теме
- Федеративный поиск в Windows 7
- Программируем панель задач Windows 7: панель миниатюр
- Использование сенсоров в приложении: реализация в managed-коде (ч.1)
- Использование сенсоров в приложении: реализация в native-коде (ч.1)
- Я тебя чувствую: использование платформы Sensor в Windows 7
- Доступны записи с Windows 7 PDC Boot Camp
- Fishbowl для Facebook с использованием новой панели задач Windows 7
- Программируем для Windows 7 в Visual Studio 2010
- Новая версия Windows API Code Pack
- Программирование служб Windows 7 с триггерами (ч.2)