Что не так с сохранением файлов?
Каждая запущенная программа одновременно существует в двух мес' тах: в памяти и на диске. То же самое справедливо в отношении любо' го открытого файла. На сегодня это просто обязательное положение вещей – существующая технология применяет различные механизмы для быстрого доступа к данным (оперативная память) и для долгосроч' ного хранения этих данных (диски). Однако большинство пользовате' лей этого не осознают. Наши ментальные модели (если не говорить о программистах) иные: существует один документ, который мы непо' средственно создаем и в который вносим изменения.
Когда открывается диалоговое окно «Сохранить изменения?», изобра' женное на рис. 17.1, пользователь подавляет приступ страха и смуще' ния и щелкает по кнопке Да в силу привычки. Диалоговое окно, на ко' торое пользователи всегда реагируют одинаково, избыточно. Его сле' дует удалить из интерфейса.
Рис. 17.1. Вопрос, который редактор Word задает, когда вы закрываете файл с внесенными изменениями. Это диалоговое окно – результат того, что про- граммист навязывает несчастному пользователю модель реализации файло- вой системы. Оно настолько не соответствует ожиданиям пользователей- новичков, что они зачастую непреднамеренно выбирают вариант «Нет»
Что не так с сохранением файлов?401
Диалоговое окно сохранения изменений исходит из неверного предпо' ложения о том, что сохранение изменений и отказ от сохранения – равновероятные варианты поведения пользователя. Диалоговое окно считает оба варианта одинаково важными, хотя кнопка Да нажимает' ся на несколько порядков чаще кнопки Нет. Как говорилось в главе 10, здесь возможность перепутана с вероятностью. Пользователь может ответить «нет», но почти всегда отвечает «да». Ваша мама думает:
«Если бы эти изменения были мне не нужны, разве я оставила бы их в документе?». Вопрос о необходимости сохранить изменения звучит для нее абсурдно.
Еще одна странность этого диалогового окна: почему оно спрашивает вас о необходимости сохранить изменения только тогда, когда вы уже закончили работу? Почему этот вопрос не был задан непосредственно после внесения изменений? Связь между закрытием документа и со' хранением изменений отнюдь не естественна, хотя опытные пользова' тели и привыкли к ней.
Приложение открывает диалоговое окно сохранения изменений, ко' гда пользователь закрывает файл или выходит из приложения, пото' му что настало время, когда программа должна согласовать копию до' кумента, находящуюся в памяти, с копией, хранящейся на диске. Технология реализации этой функциональности связывает сохране' ние изменений с закрытием файла или программы, однако пользова' тель не видит никакой связи. Когда мы выходим из комнаты, мы не рассматриваем вариант отмены всех перестановок, которые в ней сде' лали. Когда мы ставим книгу на полку, мы не стираем заметки, кото' рые сделали на полях.
Набравшись опыта, мы привыкаем использовать это окно в целях, для которых оно не предназначалось. Когда нет простого метода отменить большое количество изменений, мы пользуемся диалоговым окном со' хранения изменений и отвечаем «нет». Если вы вдруг обнаруживаете, что внесли значительные изменения не в тот файл, вы вызываете это диалоговое окно в качестве запасного выхода для возврата к первона' чальному состоянию. Это удобно – но все же это трюк. Существуют луч' шие способы решения проблемы (например, функция возврата к опре' деленной версии – Revert).
В чем же реальная проблема? Файловые системы в операционных сис' темах современных персональных компьютеров (Windows ХР, Win' dows Vista или Mac OS X) технически превосходны. Источником про' блемы вашей мамы является ошибка разработчиков, которые скрупу' лезно перенесли прекрасную модель реализации на пользовательский интерфейс.
В реальности многим приложениям нет нужды иметь функции управ' ления документами или файлами. Созданные компанией Apple прило' жения iPhoto и iTunes дают пользователя богатую и простую в приме' нении функциональность, позволяя обычному человеку игнорировать
факт существования файлов. Список проигрывания в iTunes можно создать, изменять, раздавать, переносить на iPod, хранить годами, не' смотря на то, что пользователь ни разу не сохранял его явным обра' зом. Фотографии переносятся с фотоаппарата в iPhoto, после чего их можно сортировать, показывать, отправлять по электронной почте, печатать – и при этом пользователям никогда не приходится задумы' ваться о файловой системе.
Проблемы модели реализации
Файловая система компьютера – это инструмент управления данными и программами на диске. Речь идет не только о крупных жестких дис' ках, где хранится большая часть вашей информации, но также о flash' дисках, компакт'дисках CD'R и DVD'R и сетевых дисках. Программы Finder в Mac OS и Проводник (Explorer) в Windows графически пред' ставляют файловую систему во всей ее красе.
Управление дисками и файлами не входит в список целей пользователей.
Хотя файловая система – это внутренний механизм, который не дол' жен затрагивать пользователей, ее влияние повсеместно сказывается на пользовательском интерфейсе большинства приложений. Соскольз' нуть к мышлению в модели реализации очень легко, потому что в сво' их поисках более совершенных решений для работы с файловой систе' мой проектировщики взаимодействия сталкиваются со сложными за' дачами. Особенности реализации файловой системы непосредственно влияют на нашу способность создавать полезные и осмысленные ин' терфейсы управления версиями документов, отношениями между до' кументами и даже процедурной инфраструктурой наших приложений. Это влияние, вероятно, никуда не исчезнет, если мы не приложим уси' лия, чтобы изменить положение дел.
В настоящее время большинство программных продуктов обращаются с файловой системой точно так же, как и оболочка операционной сис' темы (Проводник, Finder). Это все равно что заставлять автолюбителя обращаться с машиной так, как с ней обращается автомеханик. Хотя такой подход неудачен с точки зрения взаимодействия, он является стандартом де'факто, и попыткам улучшить ситуацию препятствует значительное сопротивление.