Читать «Цифровой журнал «Компьютерра» № 24» онлайн - страница 64

Коллектив авторов

- Но действительно ли пользователям необходима иерархическая структура данных? Логично было бы каждый вид данных хранить наиболее подходящим для него образом...

- Да, но многие люди бесятся и говорят: «Дайте мне файл, я хочу его потрогать». Я бы не хотел их этого лишать. Но в отличие от Windows и Unix, где объект не может не лежать в файловой системе, в «Фантоме» решение об этом принимает приложение. Оно может взять и скрыть от системы именования свои объекты, если считает это удобным и правильным или если это полезно с точки зрения безопасности. Одна из причин, почему в Windows так хорошо живут вирусы (да и в Unix проблема та же) — это собственная файловая система, где можно просканировать всё, что есть. «Фантом» позволяет не показывать то, что программа не хочет. При этом объект существует, доступен тому, кому он нужен по указателю и больше никому. Я полагаю, что это достаточно важный факт с точки зрения защиты от вирусов. У «Фантома» есть и другие свойства, которые сильно осложняют жизнь злоумышленникам.

- Следующая мечта — исчезновение (с пользовательской точки зрения) разницы между оперативной памятью и диском. Это бы отменило необходимость сохранять то и дело свои данные. «Фантом» от этого избавляет?

- Да, «Фантом» здесь больше всего похож на листочек бумажки — вы написали что-то — оно осталось. Хотите копию — сделайте копию. А вот команда Save здесь не нужна по определению. Даже больше скажу — в «Фантоме» нет разницы между иконкой и окном. То есть иконка, документ и окно — это, вообще говоря, одно и то же. Наличие окна, которое показывает содержимое документа — это всего лишь вопрос состояния hide или unhide. По сути дела, окно — это увеличенная иконка.

- То есть можно сделать раскинский zoomable-интерфейс?

- Да-да-да! Это в существенной мере движется именно в эту сторону. Я как раз про это и говорил — в Раскине меня как раз смущает то, что у него есть хорошее представление о том, что он хотел бы видеть, но нет хорошего представления о том, как это положить на реальную софтверную среду. У нас это представление, кажется, даже есть. Оно не вполне однозначно ложится на идеи Раскина, но я в целом вполне разделаю его мечты.

- Далее — разница между запущенной и незапущенной программой. Она тоже, как я понимаю, стирается?

- Да, в «Фантоме» это делается естественным образом. Как только программу перестают беспокоить, она перестала быть запущенной. Начали снова с ней что-то делать — она продолжила работать с того места, где её оставили. Собственно, это к тому же вопросу об иконке, документе и окне. Есть документ, состояние которого присутствует, и если убрали окно, это ни на что не повлияет. Документ останется в прежнем состоянии.

- Последнее — это возможность отмены любого пользовательского действия.