> man operating_systems
Создавая новое поколение - часть 4
Удобство использования
на Воскресенье, 14 Ноябрь 2004, 19:39
добавил: Николас Блэхфорд (Nicholas Blachford) список авторов печатать элемент контента создать pdf-файл  элемент контента
категория Статьи
комментарии: 0
просмотров: 2197


Установка программ
Установка программ должна быть быстрой и безболезненной операцией, инсталлятор должен предполагать, что у пользователя нет подключения к Интернету. Если приложению необходимы библиотеки, которые не включены в систему, то они должны поставляться вместе с установочным дистрибутивом, будь то CD, DVD, zip или бинарный файл. Ни при каких обстоятельствах система (и в особенности пользователь) не должна отправляться на поиски дополнительных файлов или "". Это может считаться нормой, если вы поставляете ПО для чокнутых, которые любят все делать своими руками, но это не так, если вы также хотите захватить простых пользователей.

Пользователю и программам должно быть запрещено изменение системных компонент. Изменение компонент ведет к проблемам вроде "DLL hell", когда установленная программой системная библиотека может вызвать сбой в программах или даже самой системе. Злонамеренные программы также могут в это включиться и заменять библиотеки, вызывая проблемы. Предотвратив изменение компонентов ОС пользователем и программами, любая устанавливаемая программа может ожидать однозначное окружение, в котором она будет запускаться и для которого ее можно тестировать. Как я уже говорил в предыдущей части этой серии статей, даже если кто-то сможет изменить компонент системы, система автоматически заменит его.

Конечно, DLL hell может случиться и с привлечением сторонних библиотек. Этого можно избежать, позволяя иметь несколько файлов библиотек с одинаковыми именами, но разными версиями. Если одной программе нужна версия X, она получит версию X, в то же время другая программа, требующая версию Y, сможет получить Y без каких-либо конфликтов (это реализовано в Microsoft .NET). Также, система должна заниматься поиском библиотек, дабы обнаружить ситуацию, если они будут размещены в неверном месте.

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

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

Должен существовать "" язык, который можно будет использовать для всего: от простых поигрываний, скриптов для консоли и приложений до, собственно, полноценных приложений. Конечно, стандартный язык не должен исключать использование других языков, но наличие стандартного языка должно поощрять разработку и, если он будет достаточно простым, то он может даже поспособствоват непрограммистампопробовать его. Я скорее всего использовал бы Python в качестве стандартного языка, так как у него и была особая цель сделать программировани проще, и его можно использовать для всех упомянутых мной целей.

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

Конечно же, должен быть и стандартный "производительны" язык, такой как C++ или Objective-C для нормальных разработчиков, на котором, как я думаю, будет реализовываться основное число приложений. Я бы также хотел увидеть хорошую реализацию Java, но я бы хотел, чтобы ее богатая библиотека классов была доступна и другой части системы.

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

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

Чего-то не хватает?
Эта серия не является подробным описанием последних технологий в любой данной области, я не знаю всего и не претендую на это. Если вы знаете технологии, которые я не упомянул, но которые были бы полезны - расскажите о них в комментариях.

Ссылки / Подробная информация

[ROS] Ruby OS Interface Guidelines

[Proximal] Проксимальный интерфейс

[Fitts] Закон Фитта

[Case] Чувствительност к регистру

[Информация по человеческим интерфейсам]

Gnome HIG

Apple HIG


Cornell University HIG

Кратко о человеческих интерфейсах

Nielsen Norman Group HIG

Зал позора пользовательски интерфейсов

Зал славы пользовательски интерфейсов

Предыдущие части этой серии статей:
Часть первая: Аппаратные средства
Часть вторая: ОС
Часть третья: Безопасность и файлы

© Nicholas Blachford July 2004

Об авторе:
Николас Блэхфорд (Nicholas Blachford) - 33-х летний эмигрант из Британии, ныне живущий в Париже, но не говорящий по-французски (еще). Интересуется различными причудливыми темами (Аппаратное обеспечение, программное обеспечение, фотография) и всякими другими вещами, особенно теми, в которых используются новые технологии. На сегодняшний день безработный.

индекс статьи
страница 1 : страница без заголовка
страница 2 : страница без заголовка
страница 3 : страница без заголовка
страница 4 - текущая : страница без заголовка


Комментарии доступны только авторизованным пользователям, авторизуйтесь или зарегистрируйтесь на сайте здесь

© OSRC.info, 2004-2010.
Авторские права на любые материалы, авторы которых явно указаны, принадлежат их авторам. По вопросам публикации таких материалов обращайтесь к авторам.
Авторские права на любые другие материалы принадлежат OSRC.info.
Сайт является помещением библиотеки. Копирование, сохранение на жестком диске или иной способ сохранения произведений осуществляются пользователями на свой риск.
При использовании материалов сайта ссылка на OSRC.info обязательна.