Проектирование графического интерфейса

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

Примечание. Я хочу создать структуру, вероятно, объектно-ориентированным способом, и я, вероятно, буду использовать С#, но документация не обязательно должна быть на С#.

Ответ 1

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

В прошлом я работал с несколькими интерфейсами GUI на разных языках (wxpython, gtk +, swing,...). Никогда, как эксперт, но вот что я могу сказать:

  • Держите его простым. Если вы хотите дизайн с нуля, я думаю, что нет необходимости в сумасшедшем сложном материале. Постарайтесь сделать это максимально простым, уменьшив количество входов и опций в ваших элементах.

  • б

    . Основная общая точка всех успешных фреймворков, которые я знаю, - это абстракция. Каждый отдельный элемент можно легко обрабатывать, но он по-прежнему обладает всеми родителями. Это позволяет вашим объектам быть действительно универсальными, хотя и простыми.

  • Прочитайте дополнительную документацию по другим фреймворкам. Мне нравится тратить время на чтение документа графического интерфейса, потому что он помогает понять уровни абстракции. Я считаю, что документ pygtk легко читается.

  • Использовать другие фреймворки. Большинство структур делают вещи более или менее одинаково. Это особенно верно для графических интерфейсов. Рамка, содержащая макеты; меню и статусные панели; Я уверен, что 95% концепций, которые вы хотите использовать, можно найти в других рамках. Таким образом, лучший способ узнать, как его развивать, - это знать, что вам нужно и как это сделать. Всякий раз, когда я работаю над графическим интерфейсом, я начинаю читать соответствующую серию статей здесь. Писатель делает отличную работу, объясняя все простым образом, чтобы вы могли быстро продвигаться с концепциями.

  • Держите его открытым. Что-то, что я вижу все чаще и чаще, - это использование синтаксиса высокого уровня для описания GUIS. GTk, например, может принимать XML файлы во входных данных и создавать из него целый интерфейс. Я считаю это очень приятным для абстракции и повторного использования. И я также значительно уменьшаю количество необходимого кода.

Я не мог найти книги по точной теме, которую вы хотите. Я думаю, вы уже искали в Интернете. Надеюсь, эти маленькие идеи помогут вам.