文档章节

谈谈我与GUI设计的一点碎事

secondriver
 secondriver
发布于 2015/09/17 09:11
字数 1157
阅读 12
收藏 0

    关于图形用户界面(GUI)设计的文档和著作也不少,可是还是在网络上,实际开发中充满着各种各样的争议和争吵。

    很长一段时间对GUI的设计一直没能太注意,也是因为注意放在了业务的处理,这样忽视了一个很关键的问题就是:“软件最终的使用者的感受”。对于开发者而言既作为软件的创造者,也作为软件的使用着。那么更应该将对已有的,已使用的软件有一个自己的认知,思考,感受。
   
    这里翻译了一下: Shneiderman's "Eight Golden Rules of Interface Design"  用户界面的八项基本准则。
     第一项:尽量保持一致性
     第二项:为熟悉的用户提供快捷键
     第三项:提供有效的信息反馈
     第四项:设计完整的对话过程
     第五项:提供简单的错误处理机制
     第六项:方便用户撤销操作
     第七项:用户掌握控制权
     第八项:减轻用户的记忆负担
    Shneiderman的八项准则是任何软件的基本需求。
 
    准则,原则之类的金律可是很多了,关键是取决于软件需求分析人员,设计人员,开发人员等等一群人对待开发的理解和对实际生活中软件在使用者面前的处境。
   
    用软件就和吃菜一样,我们该给软件分门别类的划分上派系,这样更能说明各种类型的软件的GUI应该具备怎样的风格更能符合用户的习惯。至于门派划分,至今涉猎不足,积淀欠缺,不敢狂言。
 
    人的行为产生基本上有两种:一,天生的自发行为;二,后天的学习的自主行为。而对于软件的使用也可以简单的分为两类:一,人们在使用工具的传统习惯;二,优秀的软件,成熟和富有思想的创造用时间沉淀下了的用户习惯。我想我们的往后的软件GUI也应该继承这些东西,也只用站在这样的软件巨人的肩上更符合发展的基本规律。

    用过很多软件最终能够赞不绝口的软件功能设计就不谈了,GUI设计绝对可以留下赞誉的。关于GUI的设计自我感觉该注意下面一些:
   实用,简洁,具备自解释的能力。
 
    尊重和继承已有的成功软件的GUI设计。
 
    确定软件的使用对象,符合用户的要求。
    
  GUI设计严格分层设计,采用面向对象的继承原则。
 
  说再多,还是要源于执行。设计GUI的时候,了解成熟的产品,借鉴有点,修正问题,符合时代发展潮流;深入了解软件使用的工作环境,工作状态,工作方式,工作类型得出有效的GUI解决方案;GUI设计以及开发遵循可扩展性,继承性,复用性,可整体改变风格等。
    
    关于软件GUI,自己没有什么美学经验,审美癖好和普通的使用者一样,同样为软件使用过程中的麻烦抱怨过,软件GUI设计没有美感而丢弃过;操作组件,布局没能合理安排而苦苦寻找而瞎找过,总之我们用过的好多软件都或多或少的给我们带来麻烦。
    下面附一图片看看:
                               

 
  应该可以看到,退出程序的提示按钮,“否”在左,“是”在右。总之给我带来麻烦,其实还有很多软件有着各种各样的不合理的设计。不知道这是创意,还是颠覆,但给用户带来不爽就是不对的。
    由于之前都是挑剔别人的GUI设计,而自己也没有太在这方面做过太多尝试,这些日子弄了些涉及到GUI的程序开发,算是改变了以前的“界面设计是美工的事”的错误看法。美学侧重于感官的享受,而GUI设计的灵魂不仅仅是这些,还有实用性,合理性,符合习惯,遵循已成事实,文化背景,使用环境等等。
    鉴于被很多软件伤害过,以此文警示下自己。GUI设计源于对生活的理解,对使用者的关注。

本文出自 “野马红尘” 博客,谢绝转载!

© 著作权归作者所有

secondriver
粉丝 10
博文 229
码字总数 233821
作品 0
广州
程序员
私信 提问
新手用pyqt开发gui,设计页面时是用固定尺寸还是全屏自适应啊?

公司领导让我用pyqt5开发gui页面,本人在这方面是小白,UI设计师问了我一个问题,设计页面时是设计成固定大小还是全屏自适应的,领导告诉我怎么快怎么来,请问各位前辈哪个好开发一点啊?...

王聪聪聪
02/18
351
0
如何避免贫穷和忙碌,在2018年你需要这样提升自己

热文导读 | 点击标题阅读 Java和Android架构2017年总结:文章精选 吊炸天!74款APP完整源码! 谈谈离职和跳槽 为什么我们总是很忙碌,却碌碌无为?为什么我们总是有很多理想却一事无成?为啥...

xj032w2j4ccjhow8s8
2018/01/07
0
0
自卑太深,怎么才能消除自卑的心理?

我总觉得,每个人内心里面都会有一点自卑,这很正常。 而自信并非天生的,可以后天培养。 我自己尝试过两个方法,还是挺有效的,分别是: 一, 一点一点小的成功,就会积累自信; 二, 做一件...

明哥聊求职
2018/06/09
0
0
说说设计谈谈钱!不可不知的设计师接活报价公式

公式 我首先就把公式列出来,这样让时间繁忙的小伙伴看完这里就可以了。后面我会主要解释这个公式和如何提高价格还有拿到全部佣金。 [(你的月薪 ÷ 22天 ÷ 8小时)x 私单预估时间 ] x 2倍价...

daniel-john
2014/07/02
2.2K
0
唉,谈谈我们的极品销售。

先交代下 地点 : 外地出差; 人物: 极品销售:销售嘛,都是酱油人(已回公司)。 实施:拖拖拉拉,喜欢把事情都甩给别人做(已回公司)。 然后还有就是我:码农(身上只有两块 重点 等待发工...

开源中国社区酱油哥
2013/03/25
1K
34

没有更多内容

加载失败,请刷新页面

加载更多

数据仓库分层示意图

细肉云吞
21分钟前
5
0
android studio集成opencv的方法

注意:每个版本的方法可能是不一样的,我使用的版本是4.1.1,这个版本指的是opencv-android的版本 1.从opencv官网下载opencv-android的sdk包,地址:https://opencv.org/releases/ 2.解压下载...

shatian
33分钟前
7
0
CentOS 7上的NGINX 安装 Godaddy SSL证书

Step 1.创建一个目录来存储服务器密钥 & 证书 $ mkdir /usr/local/nginx/conf/vhost/sslkey Step 2.生成CSR 说明:会提示填:1.国家 2.省份 3.城市 4.公司名称....等,填完后会生成 sasha-la...

Linux_Anna
35分钟前
5
0
WKWebView简单使用-(KVO)加载进度条,标题,返回

- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation{//如果将cangoback写在此方法里面只能执行一次,如果当前网页跳转不是新的web就不能执行}//通过...

west_zll
41分钟前
4
0
CentOS 7设置静态IP配置

vim /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOC......

Jugier
46分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部