腾讯高级设计师:交互知识树系列之开发思维
「他们喜欢戴着镣铐跳舞,而且是其他诗人的镣铐。」
They love to dance in these fetters, and even when wearing the same fetters as another poet.
——布里斯·佩里(Bliss Perry),美国文学评论家
闻一多最早在他的《诗的格律》一文中引用了佩里的这句话,想表达的是诗词的格律对诗人的约束是有益的——「恐怕越有魄力的作家,越是要戴着镣铐跳舞才跳得痛快,跳得好。只有不会跳舞的才怪脚镣碍事,只有不会作诗的才会觉得格律是束缚。」
我觉得这句话不仅是说给诗人们听的,也可以说给设计师们听。连艺术创作者们都要受到格律、绘画材料、风格的限制,更不用说为产品和用户代言而生的设计师了。以前的产品可是没有设计师的,只需要开发人员就可以做出 DOS、Windows、Linux 这样的操作系统,以及初代的 OICQ 和 Foxmail 等软件,直到他们意识到产品思维的重要性、用户的重要性、界面美观的重要性,才诞生了用户体验设计师这个职业,也就是后来的交互设计师和视觉设计师。
正因为设计师是用户和产品开发之间的桥梁,所以设计师不仅应该有用户思维,也需要有开发思维。因为如果不明白自家的产品究竟用的是什么技术,那设计出的产品很可能是天马行空的。俗话说得好(by WingST),「比创意谁不会,能落地才算本事!」
一、理解限制,实现设计价值
「不要将系统的限制或条件视为局限性,把他们看成构建创意设计的根基。」
——Luke Miller,《用户体验方法论》
Miller 的这句话道出了设计和技术之间的关系,我深以为然。
1. 设计师最擅长的是构想
在没有设计介入时,光是技术构成的产品易用性和易学性都是很差的,就像一个光秃秃的地表,确实很踏实,但毫无生气,还容易迷路。这时设计师来了,说这不行啊,我可以给你做这样那样的优化,给出了一个完整的设计构想,确实很漂亮。这时地表上有了植被、建筑和大气层,构成了一个新的产品,老板一拍桌子说,「看着不错啊,我们开工吧!」
2. 寻找设计的支点
给出的设计构想是很漂亮,但是很多设计师到了实现的这步就傻眼了:剩下的交给开发啊,我切图你实现不就好了,怎么这也不能做,那也实现不了?
很多时候其实并不能怪开发,不如一起来帮开发同学想想,你的设计究竟要怎么落地才能实现地更好?
比如你想快速掌握用户的地理位置,你就应该知道手机上是有 GPS 模块的,APP 有接口能够快速获取到用户的手机定位信息,定位的经纬度可以换算成省市地区;
比如你想做一个可以根据用户的手机倾斜角度改变形态的设计,你就应该知道手机上有一个叫陀螺仪的模块,它具体是怎样感知手机的倾斜角度的,又能传回怎样的参数来代表这些角度?它的精度如何,能够很好地还原你的设计吗?
比如你想实现一个很酷炫的动画效果,你就应该知道 Android、iOS 这两个系统上的动画实现原理。如果你做的是 Web 或者是 PC 端的设计,那和移动端的动画实现方式又不一样,这些实现方式能还原你的动画效果吗?
比如你想做一个图像智能识别的功能或者智能语音翻译的功能,你就应该明白这种功能是哪些公司做得比较强,他们分别能实现的程度是怎样的?你们的开发团队有相应的技术储备吗?是否能直接找这些公司合作呢?
就算你做的不是什么创新的设计,但是要保证你做出的设计能够很好地被开发还原出来,你也应该知道点九切图法、Retina 屏幕的切图比例、iOS 的基本控件库、响应式设计的实现原理等等,明白这些,你的设计才算找到了和技术连接的支点。