Книга: Искусство программирования для Unix
3.1.7. Предпочтительный стиль пользовательского интерфейса
3.1.7. Предпочтительный стиль пользовательского интерфейса
В главе 11 подробно рассматриваются различия между интерфейсами командной строки (Command-Line Interfaces — CLI) и графическими пользовательскими интерфейсами (Graphical User Interfaces — GUI). Выбор проектировщиком операционной системы одного из этих типов в качестве обычного режима представления влияет на многие аспекты конструкции от планирования процессов и управления памятью до программных интерфейсов приложений (Application Programming Interfaces — API), предоставленных приложениям для использования.
С момента появления первых компьютеров Macintosh понадобилось достаточно много лет, чтобы специалисты убедились в том, что слабые средства GUI-интерфейса в операционной системе являются проблемой. Опыт Unix противоположен: слабые средства CLI-интерфейса представляют собой менее очевидный, но не менее серьезный недостаток.
Если в операционной системе CLI-средства являются слабыми или их вообще нет, то проявляются описанные ниже последствия.
• Никто не будет разрабатывать программы, взаимодействующие друг с другом неожиданным способом, поскольку это будет невозможно. Вывод одной программы невозможно будет использовать в качестве ввода другой.
• Удаленное системное администрирование будет слабым и трудным в использовании, и будет потреблять больше сетевых ресурсов[22].
• Даже простые неинтерактивные программы будут нести на себе издержки графического интерфейса или замысловатого интерфейса сценариев.
• Программирование любым изящным способом серверов, системных служб и фоновых процессов будет, вероятно, невозможным или, по крайней мере, значительно затруднится.
Для разработки системы, полностью противоположной Unix, нужно отказаться от CLI-интерфейса и возможностей включения программ в сценарии, или использовать важные средства, управлять которыми с помощью CLI-интерфейса невозможно.
- 3.1.1. Унифицирующая идея операционной системы
- 3.1.2. Поддержка многозадачности
- 3.1.3. Взаимодействующие процессы
- 3.1.4. Внутренние границы
- 3.1.5. Атрибуты файлов и структуры записи
- 3.1.6. Двоичные форматы файлов
- 3.1.7. Предпочтительный стиль пользовательского интерфейса
- 3.1.8. Предполагаемый потребитель
- 3.1.9. Входные барьеры для разработчика
- Определение пользовательского формата числовых данных
- Стиль написания исходного кода
- Не допускайте того, чтобы поток пользовательского интерфейса блокировался на длительное время
- Основы интерфейса Access 2007
- Урок 2.3. Настройка интерфейса Windows Vista
- Настройка интерфейса Word
- Стиль и позиция
- Описание пользовательского интерфейса
- Один стиль для всех страниц сайта
- Стиль жизни
- 4.3.2. Стиль сообщения об ошибках
- 8.3.1. Стиль POSIX: statvfs() и fstatvfs()