В Windows 95 сделана попытка выработки общего изобразительного стиля для контролей. Об общем стиле экранного изображения речи вообще не идет, если только не считать за таковой набор "тем", входящий в состав Microsoft Plus. Примером хорошего концептуального дизайна интерфейса (помимо некоторых компьютерных игр) может служить система дорожных знаков. Ее разработка не так проста как может показаться на первый взгляд. Обратите внимание на сочетание "реалистических" пиктограмм с "абстрактными", на комбинирование многих знаков, висящих вместе, на "словарь фонов". Кроме того, удалось решить поистине титаническую задачу - знаки заметны и не портят красоту окружающей природы там, где эта красота есть. И, главное, эта система хорошо работает и не требует от своих пользователей высшего образования. Во многих моих интерфейсных раздумьях дорожные знаки занимают значительное место. Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. В сущности, на время работы с системой пользователь погружается в среду интерфейса подобно тому, как приехав на сафари, турист погружается в среду дикой природы. Здесь слово "среда" применяется не для красоты, а как обозначение типичной для поведения человека в различных средах связки "сигнал-действие".
1. ИСТОРИЯ СОЗДАНИЯ MICROSOFT WINDOWS.
Корпорация Microsoft объявила о начале разработки графической операционной оболочки Windows 10 ноября 1983 года, хотя еще в конце 1982 года программисты Microsoft начали создавать универсальный набор графических процедур, названный
Графическим Интерфейсом с Компьютером (CGI).
Первоначально предполагалось, что CGI как набор процедур будет поставляться с компиляторами Microsoft, позволяя разработчикам программ выводить графику на самые различные типы принтеров. Программисты могли бы использовать в своих программах функции CGI, которые затем переводились бы в команды нужного типа принтера.
Вскоре после начала работ над CGI корпорация Microsoft развернула работы по созданию графической операционной среды для компьютеров с MS-DOS. Создание такой оболочки было инспирировано неожиданным интересом пользователей IBM совместимых компьютеров к объявлению корпорацией VISICorp о начале работ над многооконной операционной оболочкой VisiOn.
Таким образом, старая добрая конкуренция сделала свое дело - в феврале 1983 года стало ясно, что Microsoft создаст свою собственную оболочку Windows. Хотя многие особенности и свойства Windows кардинально изменились в последующем, некоторые положения были ясны с самого начала.
Windows должна быть многозадачной, т.е. должна позволять запускать несколько программ одновременно. Windows должна работать со всеми типами дисплеев и принтеров. И поскольку пользователю очень трудно отказаться от привычных программных средств, Windows должна позволять запускать
приложения MS-DOS. Последняя цель настолько оказалась трудной в реализации, что задержала весь проект на многие месяцы. Задача оказалось не из простых. Типичной
машиной был компьютер со сравнительно медленным процессором 8088 и оперативной памятью 64Kb. Если учесть, что MS-DOS накладывает принципиальное ограничение по оперативной памяти в 640Kb и, в отличие от компьютеров Macintosh, не обеспечивает программно-аппаратную поддержку графики, разработка многозадачной графической операционной оболочки грозила вырасти в неразрешимую задачу. Однако Microsoft
развернула работы над Windows полным ходом. К осени 1983 года разработкой Windows было занято уже 15 высококвалифицированных программистов, привлеченных
к проекту из различных филиалов Microsoft. Многие фирмы командировали своих специалистов для одновременного участия в проекте.
Когда работы над CGI перешли в фазу тестирования, это не был уже самостоятельный продукт. CGI был переименован
в GDI (the Graphics Device Interface - "Интерфейс с графическими Устройствами") и стал частью Windows, включив в себя процедуры работы не только с принтером, но и с дисплеем.
Для этого в CGI были добавлены функции, обеспечивающие поддержку типографско-издательских особенностей в работе с текстами и процедуры манипулирования графическими объектами. При презентации первого варианта Windows было обещано, что коммерческая продажа начнется в мае 1984. Весной 1984 года дата
начала продаж была отодвинута на ноябрь. В ноябре эта дата была перенесена на июнь 1985 года. Однако коробки с Windows появились в магазинах только 18 ноября 1985 года.
Несколько факторов привели к столь значительным задержкам. Однако главную роль сыграло нежелание Microsoft выходить на рынок с сырым продуктом. В феврале 1984 года глава корпорации Microsoft Билл Гейтс ( Bill Gates ) провел семинар, на
котором представил Software Development Kit ( SDK ), пакет для написания приложений под Windows, продемонстрировав на невозможности, предлагаемые программисту под Windows. SDK произвел хорошее впечатление, и к июню 1984 года было
продано почти 100 копий. Начав работать под Windows, программисты присылали в Microsoft свои замечания, заставляя разработчиков еще и еще отшлифовывать Windows, облегчая написание приложений. Был заменен язык, на котором создавался Windows (сначала это был Microsoft Pascal, затем Lattice C и, наконец, Microsoft C Compiler).
Ориентация на Microsoft C Compiler также была одной из причин задержки работ над проектом, потому, что сам компилятор не был готовым продуктом и постоянно совершенствовался. Однако, несмотря на то, что в ноябре 1985 года Windows все же вышел на прилавки магазинов, в течение двух лет (с 1985 по 1987 год) Windows не оказал большого влияния на рынок программного обеспечения и не стал альтернативой MS-DOS, как надеялся Microsoft. Большое число пользователей (51%) покупали Windows не ради созданных для него приложений (которых было очень мало по сравнению с обычными программами под MS-DOS ) или графического интерфейса, а для того, чтобы иметь возможность быстро переключаться с одного DOS приложения
на другое.
С 1987 года ситуация начала меняться. Начали появляться мощные и известные приложения, переписанные для работы под Windows.
Сейчас можно назвать такие продукты как: Page Maker под Windows, очень мощная электронная таблица Excel, Windows Graph, Word for Windows и многие другие. С выходом третей версии Windows стало ясно, что Windows не просто завоюет прочное место на рынке программного обеспечения, но станет основой стратегической политики Microsoft в создании программного обеспечения.
Windows 3.0 произвел настоящий фурор, предлагая совершенно потрясающую графику и новые, неожиданные возможности. В июле 1990 года "PC Magazine" поместил статью о новой версии Windows 3.0, в которой отмечалось, что Microsoft Windows превратился в блестящую многозадачную операционную систему, которой еще пытается стать OS/2.
Первые версии Windows не оправдывали надежд, несмотря на то, что выходили со значительными задержками, но в своем последнем варианте они оставляют конкурентов далеко позади.
2. ОБЗОР ОСНОВНЫХ ПРИНЦИПОВ ОРГАНИЗАЦИИ ИНТЕРФЕЙСА В WINDOWS
Для понимания принципов организации интерфейса Windows необходимо иметь представление об основных его элементах, на которых построено выполнение программ и взаимодействие
программы и пользователя.
Весь интерфейс Windows основывается на трех китах:
-аппаратно-независимая графика;
-стандартный оконно-ориентированный интерфейс;
- взаимодействие приложений с системой Windows и между собой посредством передачи сообщений.
Данные элементы системы Windows самым тесным образом связаны между собой, вместе образуют целостную систему и отдельное рассмотрение каждого из них в отрыве от других не имеет смысла. Перечисленные выше элементы системы Windows ниже будут рассмотрены более подробно, а пока вкратце остановимся на том, что они из себя представляют.
Аппаратно-независимый графический интерфейс (GDI) Любая программа для Windows может выполнять вывод на любое устройство с помощью одного и того же набора вызываемых подпрограмм. Причем для Windows приложения все устройства выглядят одинаково и программисту не нужно заботиться об управлении конкретным устройством на низком уровне. Каждое устройство имеет свой драйвер, отвечающий за фактическое выполнение графического вывода. Для устройств, которым при этом необходима помощь, GDI обеспечивает программную эмуляцию, использующую для реализации функций высокого уровня, средства низкого уровня этого устройства. При выводе информации на экран дисплея GDI обеспечивает оконно-ориентированную графику. Это означает, что каждое окно рассматривается как отдельная область прорисовки. Когда программа выполняет в окне прорисовку, то координаты по умолчанию устанавливаются так, что точка начала координат (0,0) находится в верхнем левом углу клиентной области окна. Кроме того, рисунки автоматически отсекаются по границам окна.
Подобные механизм защиты работает двусторонне, то есть ни вы не можете нарисовать что-либо вне своего окна, ни другая программа нарисовать что-то в вашем окне. Стандартный оконно-ориентированный интерфейс Система Windows имеет встроенную поддержку ряда объектов пользовательского интерфейса: окон, пиктограмм, меню, блоков диалога и т.п.
Окно представляет собой самую важную часть пользовательского интерфейса. Оно играет ключевую роль. Для программиста окно служит для организации прочих объектов пользовательского интерфейса и направляет прохождение сообщений в системе, окно обеспечивает область экрана
для связи с пользователем. Окно - это самостоятельно существующий объект, параметры которого описаны в специальных структурах данных, а поведение функцией
окна. Каждое окно принадлежит классу окон.
Класс окон - это шаблон, по которому реализуются реальные окна. С каждым классом окон и, следовательно, с каждым окном связан специальный тип подпрограммы, называемый процедурой окна. Задача процедуры окна состоит в обработке поступающих окну сообщений. Каждое приложение располагается в своем собственном окне и имеет, по крайней мере, хотя бы одно окно - главное окно приложения.