GUIer 做些什么?
以前常有一种想法——搞设计的人大多对编程没有多少研究;而搞程序的人大多也对设计没什么研究。在大学读了一年的书,这种想法不仅没有改变,而且更加深刻了。我想市场一定非常需要这种稀缺的交叉型人才。对于艺术和开发都有兴趣的我,非常希望能够填补这一块市场空缺,当然,顺便也从中获取一块大饼。
但最近当我开始探索这一领域的时候,发现可用资源太少了,没有什么书籍可以供参考。
在图书馆晃悠的了半天,大概找到这几类书:
- 界面设计:photoshop、fireworks、illustrator…
- 人机交互设计:UI/GUI理论…
- 窗体化程序开发:Windows Form、X Window、GNOME…
- 程序语言:C/C++、C#…
设计的书籍只关注外观,不讲实现;理论的书籍只空谈体验,没有实例;程序开发的书籍只讲皮毛,不够深入。这基乎与我想要的东西差太多了。其实,我只是想知道怎么做一个漂亮的程序界面,如何把设计图变成可以用的软件而已。
不过还是拿了一本关于GUI的书看了下来。《GUI设计禁忌2.0》通过大量的例子批评了那些不懂软件易用性程序员,并提出了各种解决方案。这本书深深地把我雷到了——原来做个好软件这么不容易。然而它却帮助我加深了对GUI的认识。
《GUI设计禁忌2.0》(美)Jeff Johnsom 著 有个豆瓣网友打趣说看这本书的目录就够了: http://book.douban.com/review/1955550/
书的最后一章:管理禁忌,详细说明软件开发中的经常被混淆的三种角色,总算让我弄清了GUI的身份:
用户界面设计人员
- 任务分析,概念设计
- 交互设计:上下文、高层组织、任务流
- 用户界面设计:输入和输出
- 实时响应性目标
- 评估是否符合易用性标准
- 布局
图形设计人员
- 创建可识别的图像和直观的标志
- 产品保价值、审美需求和品牌认知度
- 充分利用所提供的显示媒体
- 图形化地表达功能
- 布局、视觉层次结构
- 视觉一致性
GUI程序员
- 动态原型
- 实现特定的设计:内部体系结构、编程
- GUI工具包的知识
- 性能最大化、满足实时目标
- 评估和解释技术约束、成本和风险
有了这三个概念,我更清楚自己需要的是哪些方面的知识了。要走的路还有很长很长,继续探索吧……