на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Концепция WIMP. История, проблемы и перспективы

Концепция WIMP. История, проблемы и перспективы

24

Кафедра ИКТ

Курсовая работа по дисциплине:

Технологии программирования

На тему:

«Концепция WIMP. История, проблемы и перспективы»

Москва 2008

Оглавление

  • Введение
  • История
    • Развитие интерфейсов
    • Smalltalk и Lisa
    • Windows и Unix
  • Концепция WIMP
    • Метафора рабочего стола
    • Подход к интерфейсу
  • Проблемы WIMP
    • Достоинства
    • Недостатки WIMP-интерфейсов
  • Перспективы развития WIMP-интерфейсов
    • Post-WIMP-интерфейсы
  • Будущее
  • Использованная литература
  • Введение
  • Одним из наиболее впечатляющих явлений в программировании за последние двадцать лет был триумф интерфейса, состоящего из окон, значков, меню и указателей (Windows, Icons, Menus, Pointers - WIMP). Сегодня он очень широко известен и не требует описания. Впервые эту идею представили публике Дуглас Энглебарт (Douglas Englebart) с группой коллег из Стэндфордского научно-исследовательского института на Объединенной компьютерной конференции Запада в 1968 году. Оттуда идеи перекочевали в исследовательский центр Xerox в Пало-Альто, где они реализовались на персональной рабочей станции Alto, разработанной Бобом Тейлором (Bob Taylor) с сотрудниками. Их подхватил Стив Джобс для компьютера Apple Lisa - слишком медленного для осуществления своих восхитительных концепций простоты использования. Эти концепции Джобс затем воплотил в коммерчески успешном Apple Macintosh в 1985 году. Позднее они были приняты в Microsoft Windows для IBM PC и его клонов.
История

Вся история развития интерфейсов лучше всего характеризуется понятием, введенным известным специалистом в области эволюционной биологии Джеем Гоулдом (Jay Gould) - "прерывистое равновесие" (punctuated equilibrium), когда долгие периоды стабильности прерываются быстрыми изменениями. Мы можем идентифицировать четыре качественно отличных друг от друга поколения, которые характеризуются четырьмя интерфейсными стилями; представители первых трех поколений царствовали не по одному году. Сейчас на повестке дня - интерфейсы нового, четвертого поколения.

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

Во втором периоде в эволюции интерфейсов (с начала 60-х до начала 80-х гг.) господствовал режим разделения времени на мэйнфреймах и мини-компьютерах с использованием механических или "стеклянных" телетайпов (алфавитно-числовые дисплеи), когда пользователи могли взаимодействовать с компьютером путем ввода с клавиатуры команд с параметрами. Заметьте, что этот тип взаимодействия захватил и век ПК с MS DOS и ОС Unix.

Третье поколение пользовательских интерфейсов взяло старт еще в 70-е г. - при режиме разделения времени и ручного ввода команд. В научно-исследовательском центре Xerox PARC были созданы графические интерфейсы пользователя (GUI), предназначенные для работы на растровых графических сетевых рабочих станциях. Эти интерфейсы принято обозначать аббревиатурой WIMP (Windows-Icons-Menus-Pointing device), что отражает задействованные интерактивные сущности - окна, пиктограммы, меню и позиционирующее устройство (обычно мышь). Именно интерфейсы этого типа, завоевавшие популярность вместе с Macintosh в 1984 году и позднее скопированные, в частности, в Windows для ПК, доминируют и по сей день. Заметим, что сегодняшние приложения имеют интерфейсы того же типа, как и ранние "настольные" приложения, разве что увеличилась степень "реализма" благодаря применению современных интерфейсных "виджетов" (widgets) - инструментов, позволяющих, например, использовать тени для экранных кнопок. Пожалуй, новым качеством по сравнению с интерфейсами предыдущего поколения стало активное использование цвета и доступность для широкого круга разработчиков представительного множества программных средств для построения WIMP-интерфейсов. Удивительно, что третье поколение WIMP GUI доминирует столь долго. Видимо, интерфейсы этого типа полностью соответствуют требованиям значительной части современных настольных приложений.

Развитие интерфейсов

Отцом интерфейсов можно считать Дугласа Энглебарта. В 1968 году на объединенной компьютерной конференции Запада он воплотил в жизнь свои идеи, связанные с интерфейсами.

Дисплей

Мышь и клавиатура

Дуглас держит первую мышку

Далее, в 1979 году компания Xerox предложила общественности компьютер Alto. Его самой поразительной чертой был дисплей, такого же размера и ориентации, как и распечатанный документ. Дисплей был растровым, с растровой графикой и расширением 606x808. Каждый пиксель мог быть включен/выключен независимо друг от друга. Alto также обладал клавиатурой и модернизированной мышкой Энглебарта. Сам курсор мышки представлял собой рисунок в форме наклонной стрелки, какую мы знаем и ныне. Форма также менялась, в зависимости от выполняемых действий.

Alto не был микрокомпьютером как таковым, хотя его элементы вмещались в корпус, который без труда можно было поместить под столом:

Smalltalk и Lisa

Одним из самых больших прорывов в пользовательском интерфейсе было появление на свет GUI Smalltalk (Xerox) и Lisa (Apple).

Отдельные окошки в Smalltalk'e окаймлялись графической границей и выделялись на сером фоне. Каждое из окошек обладало заголовком вверху, который позволял идентифицировать окно и передвигать его по экрану. Заголовок окна не растягивался на всю длину принадлежащего окна, а лишь ограничивался своей собственной длиной, начинаясь в левом верхнем углу. Окна могли перекрывать друг друга, и выделенное окно переходило на передний план к пользователю. В это же время была осуществлена концепция "иконок" - маленького символьного представления программы или документа, которое можно было кликнуть, чтобы запустить или манипулировать им. Здесь же появляются выпадающие меню - пользователь кликнет одной из кнопок мышки и появляется иерархическое графическое меню, содержимое которого зависит от выполняемых операций. Впервые появляются полосы прокрутки (скроллбары), радио кнопки и диалоговые окна.

Было создано множество различных прототипов интерфейса Lisa, включая интерфейс, основанный на описании задач, названный "Twenty Questions" (Двадцать Вопросов). Команда разработчиков Lisa остановилась на интерфейсе, основанном на иконках: каждая иконка символизировала документ или приложение. Здесь впервые было разработано выпадающее меню, где все меню находились в самом верху экрана.

Другие нововведения, пришедшие от команды Lisa, включали галочки напротив выбранных элементов меню, "быстрые клавиши" (keyboard shortcuts) для наиболее часто используемых команд. В Lisa изменились некоторые соглашения PARC'a и добавились новые, например, идея корзины для документов, которые должны быть удалены, идея затенения недоступных элементов меню. Трехкнопочная мышка, которая лишилась одной кнопки в Star, потеряла еще одну кнопку у Lisa, став однокнопочной. А так как интерфейс требовал по крайней мере два действия для каждой иконки (выбора и запуска) появляется идея двойного клика. Позже “дабл-клик” будет стандартным средством запуска программ во всех GUI, даже в тех, которым посчастливится обладать несколько - кнопочными мышками.

Пользовательский интерфейс Lisa принесет и другие концепции, которые используются по сей день. В SmallTalk иконки представляли некоторые файлы, Lisa же впервые предлагает: иконки могут представлять все файлы в файловой системе, которые потом можно просматривать, используя иерархическую структуру каталогов, где каждый каталог открывается в новом окне. В это же время появляется идея drag-n-drop, а отсюда естественным образом следует идея перетаскивания файлов с целью манипуляции ими (например, выбор группы файлов и перетаскивание в другое место может представлять копирование файлов). Менее осязаемой, но все так же существенной была идея "ветвей ресурсов" ("resource forks"), которая прикрепляла информацию о файле отдельно от самого файла, и идея "классов создателей", означающая, что с каждым файлом может быть ассоциировано приложение, запускающееся по двойному щелчку на файле.

Windows и Unix

Windows 1.01. Граница между двумя окнами была изменена

Ко времени релиза, в1985 году Windows была цветной и обладала стандартными признаками GUI: полосы прокрутки, оконные элементы управления и меню. Хотя, меню было похожим на меню Lisa и Macintosh, основным отличием было то, что полосой меню, находившейся под заголовком окна, обладали все приложения.

Другим отклонением было использование мозаичного интерфейса, вместо перекрывающего. Предполагалось, что перекрывающие окна будут вводить в заблуждение пользователей. Однако, Биллу Гейтсу не понравилось оно, и во всех последующих версиях Windows будет использована перекрывающая модель интерфейса (когда одно окно может перекрывать часть другого). Microsoft был одним из ранних сторонних разработчиков для Macintosh'a и, как ни удивительно, получили бета-модель первого Мака, прежде чем та была представлена миру. Несомненно это повлияло на все следующие версии Windows.

Перед самым концом 80х, новые GUI начали появляться на платформах Unix Сетевая оконная архитектура, известная как X, которая позже будет основой GUI в Linux. Это были простенькие GUI, которые имитировали интерфейс Microsoft Windows, но позволяли использовать всю мощь Unix. Х также знакомит нас с новой идеей интерфейсов: простое движение курсора мышки над окном автоматически активирует его, позволяя пользователям сразу начинать ввод.

Первоначальной архитектурной идеей X Window System (которая была изобретена в 1984м году в MIT), было простое предоставление набора средств для отображения составных команд шелла (оболочки Unix) и часов. Философией Х было разделение вида и представления, т.е. X должна была обрабатывать примитивные запросы по графике и управлению окнами, а общий вид интерфейса оставался на усмотрение приложений.

Для предоставления интерфейса нужен был второй слой кода, называемый "window manager". Оконный менеджер обрабатывал создание и манипуляцию окнами и их элементами, но не был полноценным GUI. Поверх оконного менеджера был другой слой, называемый "desktop environment" или DE и изменялся в зависимости от поставщика Unix. Т.о. интерфейс от Sun будет выглядеть иначе, чем интерфейс от SGI. С появлением в начале 90х бесплатных клонов Unix, появилась потребность в бесплатной, открытой среде, реализующей концепцию рабочего стола (Desktop environment). Два наиболее ярких кандидата на эту роль были KDE и GNOME, начатые в 1996м и 1997м соответственно.

Ранняя версия K Desktop Environment, или KDE, для Linux и FreeBSD.

Концепция WIMP

Метафора рабочего стола

Интерфейс WIMP обладает концептуальной целостностью, достигаемой принятием знакомой идеальной модели - метафоры рабочего стола - ровной поверхности, на которой расположены объекты и папки, и ее тщательного, последовательного развития для использования воплощения в компьютерной графике. Главное изменение в облике интерфейса - иконика - представление объектов в виде миниатюрных графических изображений - пиктограмм. Помимо чисто внешних изменений иконика породила возможность манипулировать объектами через манипулирование их изображениями. Документы, папки и мусорная корзина являются точными аналогами предметов на столе. Вырезание, копирование и вставка точно имитируют операции, которые обычно осуществляются с документами на столе. Транспортировка непосредственно вытекает из метафоры рабочего стола; выбор значков или окон с помощью курсора является прямой аналогией захвата предметов рукой. Из метафоры рабочего стола непосредственно следует решение о перекрытии окон вместо расположения их одно рядом с другим. Представление активного окна как документа, "лежащего сверху", интуитивно понятным образом решает проблему идентификации адресата. Возможность менять размер и форму окон не имеет прямой аналогии с бумажными документами, но является последовательным расширением, дающим пользователю новые возможности, обеспечиваемые компьютерной графикой

В некоторых случаях интерфейс WIMP отходит от метафоры рабочего стола. Основные отличия: меню и работа одной рукой. Меню представляет собой не совершение действия, а выдачу кому-то (системе) команды на осуществление действия, причем, команда эта не формулируется языковыми средствами, а выбирается из списка.

Даже на чисто текстовых видеотерминалах имелась возможность вывода на экран нескольких окон одновременно, но для графического режима эта возможность значительно расширилась. Поскольку появление графического интерфейса в Apple и Windows совпало с введением многозадачности (сначала - без вытеснения), естественным образом возникло решение о выделении каждому из работающих приложений собственного окна (первичной панели). При одновременной работе нескольких приложений их окна могут перекрывать друг друга - частично или полностью, но на переднем плане всегда находится окно активного в данный момент приложения. Поскольку обилие окон может затруднить ориентацию пользователя, вводится возможность минимизации или сокрытия окон - окна неактивных приложений могут уменьшаться в размерах или вообще не выводиться на экран. Для предотвращения "потерь" скрытых окон у пользователя должна быть возможность в любой момент просмотреть список работающих приложений и восстановить нормальную визуализацию выбранных окон.

Страницы: 1, 2



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.