40 Редактирование интерфейсов
40
Редактирование интерфейсов
Моя компания только что закончила редактировать пользовательский интерфейс. Официально контракт предусматривал проведение «экспертной оценки юзабилити», но на самом деле мы занимались редактированием. Хороший пользовательский интерфейс начинается с хорошей архитектуры, но для обеспечения удобства и практичности программного обеспечения необходимо выявить и устранить изъяны в пользовательском интерфейсе. Часто для исправления ошибок приходится не один раз проводить критический анализ, пересмотр и доработку. В этом состоит процесс редактирования, а навык редактирования является одним из важнейших навыков для разработчиков программного обеспечения и прикладных программ. Редактирование программы, книги или пользовательского интерфейса во многом очень похожи.
Я всегда завидовал писателям, чьи пальцы с легкостью парят над клавиатурой, создавая первые черновики, которые можно считать окончательным вариантом. Я пишу медленно, иногда мучительно, зачастую нерегулярно, а первые плоды моего труда редко бывают съедобными. К счастью, я довольно хороший редактор. За многие годы я научился «отключаться» от своих сочинений, чтобы спустя время окинуть их свежим придирчивым взглядом и найти места, требующие переделки. Статья может пройти через четыре или пять раундов безжалостной редактуры, прежде чем я смогу с удовлетворением сказать, что теперь она готова.
На самом деле многое из того, что мне известно как писателю, я узнал в процессе многолетней работы в качестве редактора книг, журналов и брошюр. Если заниматься этим долго, то редактирование входит в плоть и кровь. Редакторский склад ума становится способом восприятия мира. Некоторые привычки редактирования настолько во мне укоренились, что стали почти автоматическими и бессознательными. Я могу просматривать книгу в магазине и заметить опечатку прямо при перелистывании страниц, как будто слова с ошибками напечатаны жирным шрифтом и прыгают на страницах, чтобы обратить на себя внимание.
Разговор о меле
Такая способность иногда приводит к неловким ситуациям, особенно если не умеешь себя сдерживать. Однажды я ждал, когда освободится столик в одном из тех небольших стильных французских кафе, в которых меню написано мелом на доске. Без колебаний и раздумий я подошел к доске и по привычке исправил ошибку в слове. Мои дочери были в шоке.
Некоторые люди от рождения пишут грамотно. Но не я. Программист-писатель П. Дж. Плоджер (P. J. Plauger) однажды заметил, что он органически не способен писать слова неправильно. Он сказал это перед тем, как предложить мне приглашать кого-либо для вычитки моих рукописей. Вместо того чтобы последовать его совету, я сам научился писать правильно.
В этом мне помогли два обстоятельства. Начало положила многолетняя работа в качестве редактора журнала, пытающегося спасти малопонятные, неэстетичные и громоздкие сочинения ученых и исследователей. Завершили дело программы проверки орфографии. В конечном итоге после многолетнего применения текстового редактора со встроенной проверкой орфографии я стал писать правильно. Программы проверки орфографии — это замечательные учителя. На самом деле они не проверяют текст и не исправляют ошибки, а просто сообщают вам о том, что они не распознали какое-то слово. Первые программы проверки орфографии даже не предлагали варианты для исправления, поэтому вам приходилось обращаться к словарю для того, чтобы убедиться в своей правоте либо исправить ошибку. В любом случае вы сразу получали обратную связь и активно занимались самообучением. Поэтому теперь мне трудно не заметить ошибку в правописании.
То же самое относится и к редактированию пользовательских интерфейсов. Когда вы начнете думать в терминах юзабилити, вам будет трудно не замечать изъяны юзабилити, где бы они не скрывались. Вы обращаете внимание на то, что указатели в больнице могут вводить посетителей в заблуждение или сбивать с пути. Вы видите, что назначение кнопок на дистанционном пульте видеомагнитофона трудно запомнить, а объяснения вашего соседа по поводу направления движения неоднозначны.
Конечно, находить недостатки в других системах нетрудно — намного труднее увидеть изъяны в своей собственной работе. Например, экспертная оценка юзабилити, упомянутая мной ранее, была втиснута в довольно плотное рабочее расписание. Наш отчет перечислял более сотни изъянов юзабилити в проекте пользовательского интерфейса, выполненном нашим клиентом. Отчет прошел тщательную вычитку, прежде чем мы передали его для печати и переплета в один из круглосуточных копировальных центров. Утром в день проведения консультации, когда вместе с нашим клиентом, его помощниками и его начальником мы собрались вокруг стола, я открыл отчет и в тот же миг заметил вопиющую опечатку на самой первой странице. Всегда ли так происходит?
Редакторы и писатели знают об этом эффекте и пользуются им. Если вы хотите вычитать свой собственный текст, то уберите его на пару дней в ящик письменного стола перед тем, как перечитать. Если вы хотите выявить изъяны юзабилити в своем пользовательском интерфейсе, то отложите схемы, наброски и снимки экрана в сторону на день или два, и займитесь чем-нибудь другим. Когда вы обратитесь к ним вновь, вам будет легче посмотреть на вашу работу свежим взглядом и увидеть в ней возможные недочеты.
Как стать чемпионом
Редакторы журналов часто подходят к своей работе с позиции заведомо несведущего читателя. Пит Бикфорд (Pete Bickford), который некогда носил титул чемпиона по пользовательским интерфейсам (User Interface Champion) в Apple, так же оценивает пользовательские интерфейсы. Он говорит, что его работа подразумевает вхождение в роль самого глупого пользователя на планете. Это такой настрой ума, при котором вы отключаете все, что вам известно о компьютерах, или приложениях, или программировании. Если вы сможете посмотреть в верхний правый угол окна Windows-приложения и увидеть кнопку для увеличения, то у вас есть перспектива стать более эффективным редактором интерфейсов.
Однако нарочитой невосприимчивости и намеренного незнания недостаточно. Редактирование предполагает не только критическое отношение, но и творчество. Вы не можете просто вычеркивать, вам нужно еще и вписывать. То, что вы пишете, определяется вашей способностью суждения, основанного на представлении о хорошей форме. Так же как вы не можете быть редактором газеты, не зная основ журналистики и правил грамматики, вы не можете редактировать пользовательские интерфейсы, если не понимаете принципы юзабилити. Вы должны распознавать чрезмерную сложность или неудобный процесс. Далее, вы должны знать, как упростить запутанную структуру или сгладить неровности операций.
Вам даже нужно научиться видеть то, чего нет. Примером может слуi жить отсутствующая обратная связь для пользователя или функция, ко1 торая не видна в нужном месте и в нужное время.
Защита от ошибок
При редактировании пользовательских интерфейсов полезно занимать негативную позицию типичного нью-йоркского театрального критика или книжного обозревателя, который обращает внимание на слабые стороны и ошибки, на проблемы и изъяны. Это может быть самым простым занятием для программистов и инженеров, которые по природе своей способны к критике. Поставьте двух из них перед белой доской и вы получите три твердых мнения с последующим обменом артиллерийскими снарядами-словами. Они могут быстро замечать недостатки в проектах своих коллег или ограничения в предложенных решениях. С другой стороны, их типичная реакция на прямую или косвенную критику — это объяснение.
Поэтому главное правило для редактирования интерфейсов — никогда ничего не защищайте и не объясняйте. Почти всегда найдется объяснение, почему вы разместили эту кнопку именно там или почему изображение пиктограммы обновляется, когда щелкают мышью по какому-нибудь элементу. Но главным с точки зрения юзабилити являются не внутренние причины, а внешние последствия. Для сохранения способности к творческой критике нужно удерживать себя от поиска оправданий и объяснений для собственного дизайна и программного решения.
Редактирование может многому научить с точки зрения писательского ремесла. Точно так же, чем больше вы будете практиковать критическое редактирование пользовательских интерфейсов, тем больше вы узнаете о том, что есть хорошая архитектура пользовательского интерфейса. Если вы заметите, что ваша рука тянется к синему карандашу, когда кто-то просит вас взглянуть на снимок экрана, возьмите карандаш. Возможно, это начало вашей карьеры редактора пользовательских интерфейсов.
Из журнала Software Development, том 3, № 11, ноябрь 1995 г.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
22.6. Связывание с адресами интерфейсов
22.6. Связывание с адресами интерфейсов Одно из типичных применений функции get_ifi_info связано с приложениями UDP, которым нужно выполнять мониторинг всех интерфейсов на узле, чтобы знать, когда и на какой интерфейс приходит дейтаграмма. Это позволяет получающей программе
Настройка сетевых интерфейсов
Настройка сетевых интерфейсов Загрузка драйвера — это лишь первое действие, которое надо выполнить, чтобы обеспечить доступ к сетевому интерфейсу. Для того чтобы интерфейс можно было использовать, ему необходимо присвоить IP-адрес и выполнить дополнительные настройки,
13.2. Настройка сетевых интерфейсов
13.2. Настройка сетевых интерфейсов Интерфейсом с точки зрения ОС является устройство, через которое система получает и передает IP-пакеты. Роль интерфейса локальной сети может выполнять одно (или несколько) из следующих устройств: Ethernet-карта, ISDN-адаптер или модем,
22.8.3 Адреса интерфейсов IPv6
22.8.3 Адреса интерфейсов IPv6 Каждый интерфейс версии 6 имеет список соответствующих ему адресов. Как минимум, список содержит уникальный адрес локальной связи (link local address), имеющий формат: 1111111010 (10 бит) 00…00 Уникальный адрес технологии связи Каждому узлу необходим способ
11.3. Оценка конструкций интерфейсов
11.3. Оценка конструкций интерфейсов Все данные стили интерфейсов продолжают существовать до сих пор благодаря тому, что они адаптированы для различных задач. Принимая решение о конструкции проекта, важно знать, как подбирать (или комбинировать) приемлемые стили для
11.3. Оценка конструкций интерфейсов
11.3. Оценка конструкций интерфейсов Все данные стили интерфейсов продолжают существовать до сих пор благодаря тому, что они адаптированы для различных задач. Принимая решение о конструкции проекта, важно знать, как подбирать (или комбинировать) приемлемые стили для
Определение интерфейсов в C#
Определение интерфейсов в C# Изложение материала этой главы мы начнем с формального определения типа "интерфейс". Интерфейс – это просто именованная коллекция семантически связанных абстрактных членов. Эти члены определяются интерфейсом в зависимости от поведения,
Реализация интерфейсов в C#
Реализация интерфейсов в C# Чтобы расширить функциональные возможности класса (или структуры) путем поддержки типов интерфейса, нужно просто указать в определении класса (или структуры) список соответствующих типов, разделив их запятыми. Непосредственный базовый класс
Создание обобщенных интерфейсов
Создание обобщенных интерфейсов Вы уже видели при рассмотрении пространства имен System.Collections. Generiс, что обобщенные интерфейсы в C# также допустимы (например, IEnumerable‹Т›). Вы, конечно, можете определить свои собственные обобщенные интерфейсы (как с ограничениями, так и без
Отображение реализованных интерфейсов
Отображение реализованных интерфейсов Теперь построим метод ListInterfaces(), который будет печатать имена интерфейсов, поддерживаемых указанным на входе типом. Единственным заслуживающим внимания моментом здесь является вызов GetInterfaces(), возвращающий массив System.Types. Это
Определение и реализация интерфейсов
Определение и реализация интерфейсов Как бы это странно ни выглядело, типы интерфейса определяются в CIL с помощью директивы .class. Но когда директива .сlass сопровождается атрибутом interface, соответствующий тип реализуется, как тип интерфейса CTS (Common Type System – общая система
Дизайн интерфейсов — это копирайтинг
Дизайн интерфейсов — это копирайтинг Каждая буква имеет значениеДизайн интерфейсов — это копирайтинг. Лучшие интерфейсы написаны. Если вы думаете что каждый пиксель, каждая иконка, каждый шрифт имеет значение, вы поверите и в значимость каждой буквы. Когда вы
Реализация нескольких интерфейсов
Реализация нескольких интерфейсов Несколько интерфейсов могут содержать одинаковые методы или свойства. При наследовании от таких интерфейсов такие одинаковые методы или свойства сливаются в один: type IShape = interface procedure Draw; property X: integer read; property Y: integer read; end; IBrush =
Минимум интерфейсов
Минимум интерфейсов Правило Минимума Интерфейсов ограничивает общее число информационных каналов, связывающих модули системы:Каждый модуль должен поддерживать связь с возможно меньшим числом других модулей.Связь между модулями может осуществляться различными