Pull to refresh
0

Новые разрешения, новые ошибки. Программисты, позаботьтесь о нас!

Reading time 3 min
Views 12K
image
На ISN уже затрагивалась тема, что последнее время наблюдается некоторые неудобства с качеством поддержки в программах различных разрешений. Особенно эта проблема выходит на передний план с развитием новых решений, таких как например нетбуков на базе Atom. У этих устройств обычно нестандартные разрешения экрана, хотя так далеко можно и не ходить. Достаточно взять мой вполне обычный настольный монитор с разрешением 1680x1050 и выставленным DPI 125%.


Я постоянно замечаю, что программы «не укладываются» в свои окошки. В основном это не критично, но не удобно или просто неприятно. Вставляя старый диск с музыкой я не удивляюсь и не жалуюсь, видя как запускается программа для прослушивания:

image

Просто нужно правильные диски покупать. :) Однако подобные ситуации я, да и не только я, встречаю все чаше и чаше. Хочется обратить внимание программистов, которые читают этот пост, что данная проблема незаслуженно остается без внимания. Сейчас разрешений становится все больше, в то время как программы бывают рассчитаны только на самые стандартные. Как следствие все у большего количества пользователей возникает проблем с разрешением или DPI.

При этом это касается даже таких программ, где используется крайне простой интерфейс и где программисты даже не думают, что могут существовать некие проблемы. Собственно я говорю об ошибке, допущенной в нашем продукте. Именно она и подвигла написать меня этот пост. Надеюсь, кто-то сделает для себя выводы из подобных ляпов. :)

Собственно об ошибке. Инструмент PVS-Studio интегрируется в Visual Studio и добавляет некоторые вкладки настроек. В частности:
image
Проще не бывает. И никаких проблем мы не наблюдали и не ждали, пока один из пользователей не смог понять, как работать с этим окном. И не удивительно. У него оно выглядит так (нет четырех кнопок):
image
Хороший урок тем, кто как мы сосредоточен на работоспособности внутренних систем и считает что GUI часть слишком проста, чтобы существенно вкладываться в ее тестирование. С приходом разнообразных вариантов компьютеров, мониторов и разрешений — это ни так. Следует пересматривать свои подходы к тестированию GUI с точки зрения запуска приложений на системах с различными экранами.

То что я написал, может казаться банальным. Но обилие «кривостей», на которые я постоянно наталкиваюсь, говорит об актуальности проблемы. На моей рабочей машине установлено крайне мало программ, однако в течении всего трех! минут я смог найти ошибки в интерфейсе настройки двух программ. Первая на что я натолкнулся в своем трее, программы непрерывной интеграции CruiseControl.Net. В вот одна из страниц ее настройки:
image
Кстати, что интересно, окно этой программы можно растянуть, хотя это не помогает избежать ошибки. Результат выглядит достаточно оригинально:
image
Второй иконкой в трее был Антивирус Касперского. Кстати, я сейчас считаю эту программу образцом графического интерфейса. Молодцы. Однако даже им сложно проконтролировать интерфейс:
image
Хочу обратить внимание. Что у меня вовсе не что-то экзотическое. У меня обыкновенный широкий монитор, который весьма удобен при программировании. Конечно, конкретно в данных примерах разрешение ни причем. Здесь сыграл роль DPI. Однако DPI у меня также не экзотичен. Надписи при стандартном DPI в Windows 7 мне показались мелкими и я выбрал вместо Default (100%) режим Medium (125%). И уже все так поплыло… На многих программах также еще скажется и разрешение. Это я тоже уже наблюдал, но затрудняюсь привести сейчас пример.

Вывод

Программисты, не критикуйте поверхностность данной заметки, не критикуйте недостатки в отдельных программах. Прошу — повнимательней посмотрите, что станет с вашими разработками на странном мониторе со странным DPI. :) Желаю всяческих успехов в создании красивых и функциональных интерфейсов!
Tags:
Hubs:
+42
Comments 48
Comments Comments 48

Articles

Information

Website
www.intel.ru
Registered
Founded
Employees
5,001–10,000 employees
Location
США
Representative
Анастасия Казантаева