Оглавление
Оглавление. 2
Введение. 3
Обзор Gnome HIG.. 4
Обзор эталонного приложения. 9
Создание видеоконвертера на PyQt 10
Исходные коды проекта. 14
converter.py. 14
main.py. 18
Заключение. 20
Список использованной литературы.. 21
Введение
Графический интерфейс пользователя (англ. graphical user interface, GUI) — разновидность пользовательского интерфейса, в котором элементы интерфейса (меню, кнопки, значки, списки и т. п.), представленные пользователю на дисплее, исполнены в виде графических изображений.
В отличие от интерфейса командной строки, в GUI пользователь имеет произвольный доступ (с помощью устройств ввода — клавиатуры, мыши, джойстика и т. п.) ко всем видимым экранным объектам (элементам интерфейса) и осуществляет непосредственное манипулирование ими. Чаще всего элементы интерфейса в GUI реализованы на основе метафор и отображают их назначение и свойства, что облегчает понимание и освоение программ неподготовленными пользователями.
Графический интерфейс пользователя является частью пользовательского интерфейса и определяет взаимодействие с пользователем на уровне визуализированной информации.
В современном мире большинство пользовательских приложений имеют графический интерфейс. Мобильные приложения, веб-страницы, десктопные приложения – все это примеры графического интерфейса. Для того, чтобы унифицировать внешний вид и компоновку приложений, были разработаны гайдлайны – общие правила, которыми должны руководствоваться разработчики. Примерами могут являться material design от google или Gnome HIG.
Целью курсовой работы является изучение одного из гайдлайнов и применение полученных знаний при разработке собственного приложения. В качестве гайдлайна был выбрал Gnome HIG, а в качестве приложения будет написан простой видеоконвертер.
|
Обзор Gnome HIG
Приведем основные рекомендации, определенные в Gnome HIG.
Сосредоточиться на главном: одним из главнейших факторов успешного проекта является чёткое определение решаемой задачи. Необходимо очертить круг будущих непротиворечивых функций, не допускать «расползания» задачи, т. е. не стоит включать новые элементы в уже принятый план. Приложение, которое пытается решить слишком много задач, в конечном итоге становится слишком сложным и непонятным для пользователей. Лучшие приложения — это приложения, которые предлагают качественное решение для определённой области задач.
Интерфейс должен быть простым: каждый элемент управления и каждое текстовое сообщение, которые добавляются в приложение, повышают его сложность, создают дополнительную работу для пользователей, что может затруднить использование приложения. Стоит включать только действительно необходимые элементы управления и информацию в свои приложения. При добавлении нового элемента управления или текста необходимо подумать, действительно ли нужно включать его в приложение.
Сокрытие неиспользуемых элементов управления: стоит скрывать элементы управления, которые не применяются в данный момент времени или в текущем контексте использования. Сокрытие неиспользуемых элементов упрощает работу с приложением, в противном случае они будут мешать пользователю.
Избавление пользователя от излишней работы: сложные в использовании приложения раздражают пользователей. Необходимо постараться сделать так, чтобы приложение работало за пользователя, а не наоборот. Каждый раз, когда приложению требуется ввод информации от пользователя (неважно, идёт ли речь о вводе текстовой информации или об использовании каких-либо элементов управления), необходимо подумать, нельзя ли выполнить эту работу за пользователя. Стоит свести к минимуму необходимость в использовании экранов настройки. Лучше сделать так, чтобы пользователь мог легко вернуться к своей работе.
|
Не стоит усердствовать с параметрами настройки: добавление параметров часто можно рассматривать как легковесное исправление дизайна. Однако большинство людей никогда не открывают и не изменяют эти параметры. Вместо добавления параметров лучше сделать так, чтобы приложение по умолчанию работало практически для всех пользователей.
Не надо отвлекать пользователя: не стоит отвлекать пользователя, если для этого нет необходимости. Необходимо проектировать приложение так, чтобы оно не мешало пользователю, когда оно не используется, и не шокировало своим поведением, когда оно используется.
Визуальное расположение элементов:
- Необходимо тщательно выравнивать содержимое и управляющие элементы. Невыровненные объекты бросаются в глаза: их не только сложнее воспринимать визуально, но они ещё и раздражают пользователей.
- Надо быть последовательным в отступах, выдерживать одинаковые промежутки.
- Объединять связанные элементы и информацию, используйте отступы между такими группами. Это упростит понимание интерфейса.
- Чтобы подчеркнуть связь между сгруппированными элементами, используйте отступ в 12 символов.
- Лучше избегать использования рамок с видимыми границами для разделения групп элементов
Визуальная иерархия: Стоит выстраивать элементы сверху вниз и слева направо. Это естественное направление, в котором люди считывают информацию (это относится к культурам, в которых чтение и запись информации осуществляется справа налево). Чем раньше должен быть считан элемент, тем выше и левее он должен располагаться. Используя данный подход при построении интерфейса, элементы окажутся включены в визуальную иерархию: более важные управляющие элементы управления будут расположены выше и левее подчинённых им элементов. Ключевым шаблоном в решении данной задачи являются панели заголовков.
|
Использование текста:
· Текст должен быть кратким и по существу. Это увеличит скорость восприятия текста пользователем. Это также позволит сократить расширение текста при переводе (при переводе с английского языка исходный текст может расширяться до 30%).
· Лучше избегать потери смысла при сжатии текста. Текстовая метка с тремя словами, понятнее передающая смысл, предпочтительнее метки с одним двусмысленным словом. Лучше подобрать наиболее ёмкие слова, которые приемлемо передадут смысл текстовой метки.
· Надо использовать слова, фразы и концепции, знакомые людям, которые будут использовать ваше приложение. Стоит использовать термины, имеющие отношение к задачам, которые решает приложение. Например, в медицине особая папка, в которой находятся сведения о пациенте называется историей болезни. Поэтому в медицинских приложениях запись о пациенте лучше обозначать как история болезни, а не запись о пациенте в базе данных.
Использование прописных букв: используется два стиля – header capitalization и sentence capizalization.
Header capitalization: этот стиль используется для любых заголовков, включая панели заголовков, заголовки страниц, вкладок и меню. Он также используется для управляющих текстовых меток, которые не образуют предложения (это могут быть текстовые метки на кнопка, переключателях и элементах меню). Прописная буква используется:
· для всех слов меньше четырёх букв;
· глаголов любой длины («Be», «Are», «Is», «See» и «Add»).
· в первом и последнем слове.
· в словах, содержащих дефис («Self-Test» или «Post-Install»).
Например: «Create a Document», «Find and Replace», «Document Cannot Be Found».
Sentence capitalization: Этот стиль используется в текстовых метках, которые образуют предложения или являются частью другого текста, входящего в состав флаговых кнопок, радиокнопок, ползунков, текстовых полей, переключателей. Он также используется при написании пояснительных и обычных текстов в диалоговых окнах, уведомлениях и т. п. Прописная буква используется:
· в первом слове предложения;
· во всех словах, которые обычно пишутся в предложениях с прописной буквы, например имена собственные.
Например: «The document cannot be found in this location.» или «Finding results for London.».
Использование многоточия: Стоит добавлять многоточие (…) в конец текстовых меток, если для выполнения соответствующего действия от пользователя требуется получить какую-либо информацию. Например, Сохранить как…, Найти… или Удалить….
Не стоит добавлять многоточия к таким меткам как Свойства (Properties) или Параметры (Preferences), так как эти команды открывают окна, которые могут включать дополнительную функциональность. Текстовая метка не определяет какое-то конкретное действие, поэтому она не должна показывать, что от пользователя требуется какой-либо ввод.
Обзор эталонного приложения
В качестве эталонного приложения был выбран handbrake – свободный видеоконвертер с открытым исходным кодом. Скриншот основного экрана приложения:
Как видим, в приложении огромное количество настроек. Я поставил цель сделать наиболее простой конвертер, который не требует глубоких знаний. В результате анализа требуемых функций, получился следующий список:
· Выбор исходного файла
· Выбор кодека и качества видео в результате
· Выбор кодека и качество аудио в результате
· Выбор разрешения
Вот основные функции, используемые пользователями handbrake. Для того чтобы создать приложение максимально простое, от остальных функций было решено отказаться.