Максимум производительности
Производительность компьютера против производительности человека Существует две разных производительности - производительность компьютера и производительность человека. Производительность компьютера ndash широко известное техническое понятие и для ее увеличения существует множество методов. Увеличение производительности компьютера ускоряет все процессы, повышает эффективность их выполнения и уменьшает стоимость одной операции. Увеличение производительности компьютера обычно приводит к увеличению производительности человека, но есть и исключения. Во-первых, для этого нужно увеличить производительность всего компьютера, а не только одной его части. За последние 20 лет сложилась странная ситуация - в то время как мощность компьютеров увеличилась в несколько тысяч раз, скорость работы пользователя в некоторых случаях даже замедлилась из-за непомерно раздутых операционных систем и программ. В 1978 году мне требовалось три с половиной минуты, чтобы загрузить систему и приложения с кассетного магнитофона на мой Apple II. Сейчас мой Maк загружается пять минут.
Миф о метафоре
Разработчики программ часто говорят о нахождении правильной метафоры в качестве основы для интерфейса. Они думают, что если наполнить интерфейс картинками хорошо узнаваемых объектов из реального мира, то пользователи очень быстро научатся работать с программой. Поэтому они создают интерфейсы, которые выглядят как офисы со столами, папками документов, телефонами и адресными книгами, в надежде создать программу с неслыханной легкостью обучения. Некоторые из лучших дизайнеров интерфейсов считают выбор метафоры одной из первых и самых важных задач. Но, пытаясь найти волшебную метафору, вы совершаете одну из самых больших ошибок в дизайне пользовательского интерфейса. Поиск такой метафоры - все равно что поиск парового двигателя для самолета или поиск динозавра для поездки на работу. Я считаю, что основывать дизайн пользовательского интерфейса на метафоре не только бесполезно, но и иногда даже вредно. Идея того, что хороший пользовательский интерфейс должен быть обязательно построен на основе метафоры, - один из самых коварных мифов, проникших в компьютерное сообщество.
Если бы microsoft не была такой ленивой...
Как-то в предыдущих статьях я уже упоминал о прекрасной и полезной! возможности операционной системе линукс, суть которой заключается в том, что можно окну любого приложения придать статус Поверх всех. Казалось бы мелочь, но в реальной жизни очень удобно. И очень жаль, что в Windows такой возможности нет. Даже подумываю утилитку написать, которая будет это реализовывать. Сегодня возникла еще одна идея, реализовав которую, microsoft смогла бы заработать нехилую благодарность, как от пользователей, так и от программистов. Особенно от программистов. Дело в том, что рано или поздно перед разработчиками прикладных программ встает проблема проверки этого самого правописания в вводимом пользователями тексте. Вот и я тоже наступил на эти грабли. Искать сторонние компоненты, проверяющие синтаксис по своим словарям я не стал, т.к. подобные библиотеки-модули как правило платные и разработаны где-нить на западе. Да и сами алгоритмы проверки, которые отлично справляются с английским языком, при переходе на великий-могучий обычно начинают откровенно глючить и косячить.
Линукс рулит!
Как создать хороший интерфейс пользователя?
Нужен ли нам специальный метод разработки пользовательского интерфейса? Каждый день разработчики программного обеспечения создают интерфейс своих программ без применения каких-либо специальных методов. Нужен ли нам вообще метод разработки пользовательского интерфейса? Я думаю нужен, и вот почему: Пользователи думают, что интерфейс - это и есть программа. Чтобы пользователи работали более продуктивно, программа должна быть простой в использовании. Достижения технологии значительно увеличили количество решений, которые необходимо принимать во время разработки интерфейса Общеплатформенные стандарты пользовательского интерфейса решают только 15 вопросов разработки в типичном проекте. Большинство программных проектов ограничены во времени. Пользователи становятся все более привередливыми. Хороший интерфейс может стать преимуществом против конкурентов, плохой - послужить причиной неудачи всего проекта. Разработчики программ могут последовать простому прагматическому методу, кратко описанному в этой статье. Более подробно этот метод описан в моей книге GUI Design for Dummies. Выяснение целей и ограничений проекта Начните процесс создания интерфейса с определения целей проекта а также внутренних и внешние обстоятельств, которые вы должны принять во внимание.
Грамотный интерфейс: поля ввода
Очень часто в программах данные вводятся в формах, содержащих множество полей: поле фамилии, имени, адреса, номера паспорта, размера обуви... Проблема состоит в том, что внешне эти поля очень похожи друг на друга и рано или поздно оператор из-за усталости, по неопытности или по какой другой причине вобьет фамилию в поле номера паспорта или адрес в поле отчества. Отследить программно такого рода ошибки бывает довольно сложно: попробуйте написать модуль который бы смог отличить имя человека от названия населенного пункта или номер телефона от номера паспорта. Частично решить эту проблему позволяют контролы, принимающие ввод по маске MaskEdit или MaskEditBox, но, честно говоря, им не хватает гибкости. Да и оператору с ними работать не очень удобно ибо капризны они. Гораздо лучше изначально создать такие условия ввода данных, чтобы подобные ошибки просто не возникали. Рассмотрим варианты.
Залепа 13. О грамотном проектировании и неграмотном IDE.
Эту статью без мата в адрес мелкомягких писать сложно : Но я все же постараюсь. Задача, согласитесь, тривиальна и встречается на каждом шагу. Попробуем ее решить средствами C. Вариантов решений может быть масса, но нас интересует грамотный подход, т.е. такое решение, при котором наша программа не превратится в кашу из кучи классов, лишних открытых методов, свойств и форм. Здравый смысл подсказывает, что справочник должен быть представлен неким классом назовем его CUserMgr, который позволяет основной программе получить все необходимые данные о пользователе и скрывает всю внутреннюю структуру внутри себя. Опять же для простоты решим, что программе нужно получать только лишь логин и пароль пользователя по его идентификатору. Ну и конечно вызывать редактор пользователей. Таким образом у нас получается примерно такой открытый интерфейс нашего класса: Так же класс должен содержать еще набор закрытых методов для редактирования пользователей: добавление нового пользователя, удаление существующего, изменение параметров пользователя, загрузку и сохранение списка пользователей и т.д.
Без темы
Кошмар!
Ага...
Owner
С Днем 8-го марта!
Поздравляю всех женщин-читателей этого блога если таковые конечно имеются с прекрасным весенним праздником - Международным Днем Женщин. Хочу пожелать всем Вам много здоровья, счастья, всегда отличного настроения. И чтобы у Вас рядом было надежное мужское плечо, на которое вы всегда смогли бы положиться. С праздником, милые женщины. С Днем 8-го марта! Различные Женщины ходят по свету. Буквально два слова - на тему на эту. Во-первых, есть Женщины - рыбки и птички. Есть зайки и пупсики. Пышки и спички. Драконы и змеи. И тысячи кисок. Тут крик из толпы: Огласите весь список! Есть Женщина-смирно. Есть Женщина-вольно. Есть Женщина- Нива и Женщина- Вольво. Есть Женщина-плазма. Женщина-лёд. Женщина-лезвие. Женщина-йод. Есть Женщины-девы и Женщины-овны. Есть Женщины-где-вы? и Женщины-вот-мы! Вот Женщина-финка. Вот Женщина-полька. Вот Женщина-фиг-вам! и Женщина-сколько? Два мира, два полюса: Женщина-хмель И Девочка-помнишь-я-нес-твой-портфель? Манящая Девушка-бригантина И Женщина-где-ты-шатался-скотина?
Присоединяюсь! :
8 марта!
Вежливый интерфейс, или принципы создания диалогов
Действительно, как верно отметил Par, нужно знать свое место. Ошибки, смены состояний, и все остальные сообщения могут быть более вежливыми, чем их делают большинство из нас. Разрабатывая очередную программу, учитывайте следующие принципы: Не прерывайте пользователя модальным диалогом до тех пор, пока он не будет в состоянии продолжить работу, не предприняв некоторого действия. Предлагайте пользователю обратную связь, не прерывая его. Например, представим, что вы произвели поиск по запросу пользователя и теперь должны сообщить о результате. Представим, что этот поиск необходим для заполнения одного из полей на форме пользователя, как например адрес человека, кому вы должны послать ее, полученный из адресной книги. Вместо того, чтобы трубить об успешном результате, просто заполните это поле. Если требуется дальнейшая обратная связь, сделайте желтую иконку, мигающую во время поиска. В случае успешного результата смените цвет на зеленый, в случае неудачи - на красный.
Windows с маленькой буквы w
Все программы базируются на основе двух типов окон: главных и вспомогательных, таких как диалоговые окна и окна документов. Выбор типа окон начальный шаг в создании внешнего вида программы. Создавая удобный пользовательский интерфейс, нельзя просто гадать, какие окна использовать в программе. Нужно знать, как делать выбор. Лишние комнаты Если изобразить программу в виде дома, то можно представить каждое окно в виде отдельной комнаты. Дом будет соответствовать главному окну программы, а каждая комната окну диалога или документа. В реальной жизни мы не можем добавить комнаты к дому, если только она не будет служить специальной цели, которой нельзя получить в других комнатах. Точно так же и при создании программы мы не должны добавлять окно в нее до тех пор, пока оно не будет служить какой-то цели, которой нельзя или невозможно достичь в уже существующих окнах.
Пользовательский интерфейс
Сегодня, благодаря совершенно неожиданным по меркам 5-летней давности применениям компьютеров, пользовательский интерфейс привлекает все больше внимания. К сожалению, как всякое модное слово искусственный интеллект, мультимедиа, Internet термин пользовательский интерфейс незамедлительно начали использовать в качестве рекламного аргумента в результате чего его смысл стал куда менее определенным. В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями. Во-первых, в понятие пользовательского интерфейса ПИ входит не только, и даже не столько, картинка на экране - трехмерная, анимированная, просто выполненная в модном дизайне, - а способы взаимодействия пользователя с системой. В этом контексте очень интересно сравнить материалы по пользовательским интерфейсам в российской компьютерной прессе напоминающие мне рецензии искусствоведов на художественные выставки и классическую книгу Дональда Нормана Психология повседневных вещей The Psychology of Everyday Things, где основным примером книги оказался дизайн дверных ручек.
