程序和界面简洁化设计的思考

  一年前,在被面试过程中,有很多面试官以各种方式问我“你会哪些计算机技能?”此时我总会几乎不停顿地说出几十个名词(此处省略100字)。面试官有点吃惊,然后他会在其中挑几个他最擅长的技能,然后把我的自信心彻底打败。
      不过好像是真的,越牛的人,简历越短。
       我也许是众多程序员的一个缩影,每个同学都希望自己掌握更多的知识,写更多的程序,有更多的技能树,赚更多的钱。总之,多就是好的,少就是不好的。一旦看到别人在做什么,那自己也做一把吧,反正“技不压身”。
          于是,你维护了好几个工程,同时学习着N门技术,自己写的类库里几乎没有private类型(公开给别人越多,功能越强,是不是?)总是标榜着自己的某产品或软件又多了几项功能,界面做得越来越复杂,滚动条越来越细。投入了大量的时间,使用者不懂怎么用,同事看不懂你的文档,过了一段时间,连自己都不知道原来写的是什么了。
         你喜欢复杂还是简单呢?
         从类库的角度来说。有些人标榜他设计的Web服务类库功能强大,可是当你在使用他设计的类库时,一下子弹出来几十个莫名其妙的函数和公共变量,有StartService, AddService, BindingService, XXXService一大堆,最可怕的是表现服务是否启动的IsStart变量还可以被外部修改!在学习微软官方类库时,我们几乎不需要看文档,就能猜出个大概。一个Web服务,Start()就是打开,Close()就是结束。简单地就像削好了一个苹果让你吃,你只负责张嘴就行了。如果希望最简单地实现功能,那么最明显的那几个函数应该就能用了;如果想要更多功能,那再逐级深入不行么?
      从界面设计的角度来说,十年前的软件和现在的软件,从UI上看最大的区别是什么?十年前的软件,几乎每个角落里都会塞几个菜单和按钮,而当前的软件非常简洁,一个页面只关注一个内容,更符合人的思维方式。现在扁平化大行其道,简单就是好的。确实是这样,每多一个选项,用户的学习成本就增加一倍。
     我对复杂界面的喜爱是有渊源的,那就是之前在科幻片里看到的超酷的UI界面。这些界面的共同特点就是看着非常复杂,一个屏幕几乎就会显示全部的信息,各种动画,几乎所有的元素都在运动,让人目不暇接,只能留下“我看不懂一定是我太笨”的想法。(可以参考COD现代战争系列每次的过场动画效果)。同时,看了视频剪辑软件After Effects,或者是建模工具3ds max的高冷的灰色调调和控件风格后,我就喜欢!
     在学习WPF之后,我满脑子都是那种所谓的“绚丽UI”,一定要将控件塞满整个屏幕!下面看我演示的观众在一阵唏嘘声之后问到,这个东西到底怎么用啊?下面就是一个典型的例子:

       

    

     

 

     Holy shit!

 

 

     我犯了一个需求错误,这种超复杂界面的需求场景有两个特征:一是使用者专门针对该软件进行过训练,会非常熟悉这套界面的功能;二要让观察者尽可能减少或者干脆取消掉对界面的一切操作,在最短的时间内获得自己想要的所有信息。  在这种情况复杂设计是合适的。想想战斗机飞行员的驾驶舱的那些仪表和操作按钮,非常直观且直接,一个操作对应一个按钮,紧张的战斗时刻,哪有时间操作那些导航菜单!一个实体按键对人的心理带来的踏实感,几乎是任何界面设计都比不上的。

     但我们的软件,真的是那样的使用场景么?用户是每天几乎只使用你这套软件且那么注重实效性么?甚至退一步说,以我们的水平,设计出来的这些界面,真的满足了上面说的两个特征了么?

     没有,不仅没有,而且极大的增加了操作复杂性,让绝大多数人都望而却步,只为了自己方便而把所有东西堆在一起是不负责任的。因为所有人都越来越懒,越来越忙了。软件用户体验差一些,就被直接抛弃。“总之,别让我看太多的文字,我会直接跳过去。图片?只有好看的我才看”。这就是现状,那些曾经每天看着报纸上密密麻麻的新闻和大部头书籍的人越来越少了。你要充分接纳用户的懒和忙,否则用户就不可能接受你的产品。(所以我估计这篇文章这种大段的文字也没什么人看)

     怎么办呢?

     首先要认准一个事实,复杂事物是由简单的事情组合而成的,以我们绝大多数人的智商,是搞不出足够复杂的东西的。更多情况是我们把简单的搞的更复杂了! 任何工具使用太复杂,一定是设计者的问题。

     从认知来说,一定要符合用户的习惯和预期:一个桥,就应该是起运输和转换作用的,连接了两头;一个任务管理模块,只关心管理,至于任务怎么做,它不需要关心;一个界面就应该有一个重点,对于移动端更是如此; 至于配色的简洁,排版的简洁,那就是高级层次的问题了。清晰简洁的设计满足某种规范和模式,让人触类旁通。一个好的设计,不论是代码还是界面,不论是开发者还是使用者,都会有一种如沐清风的感觉,世界本来就是简单的,大道至简。

       从更大的层面说,作为程序员,一定要有最核心的内功,我越来越意识到,一是算法,修身;二是设计模式;齐家,三是架构,治国,平天下的事情就先不讨论了。以无招胜有招,到后来那些纷繁的问题看起来其实只是同一个问题。“能搞定字符串,就能解决绝大多数算法的问题”。满足于自己又学会了某个类库的使用,在简历上说自己会某种聚类算法或ORM框架,这就像给马拉松选手吹嘘自己跑了三公里一样可笑。

     共勉。

时间: 2024-11-29 22:25:34

程序和界面简洁化设计的思考的相关文章

移动界面扁平化设计:扁平化的设计理念

文章描述:总而言之,拟物化有拟物化的优点,扁平化有扁平化的长处,只有两者相结合,才能使易用性与简洁性得到更好的体现. 如果UI 界面使用了拟物化的风格,看起来跟生活实物一模一样,你一定会有按下去的欲望;而扁平化思想是一种让设计者在界面设计过程中减少信息层级的思想 当下 UI 设计的扁平化浪潮可谓如日中天,从微软的 Windows 8 开始,还有后来 Google 的 Android,到现在的苹果 iPhone 的 iOS,都采用了扁平化的设计理念.可是,你真的理解什么是扁平化吗?这不禁要画上一个

商务Web应用程序的界面设计

商务Web应用程序的界面设计 商务Web应用程序的设计常常被人们所忽视.我看到许多程序,它们既不符合商业目标,也不满足用户需求,它们有很差的用户体验,并造成了商业利润的损失.更夸张的是,有些设计师根本没有参与整个程序的开发流程,而是把全部职责都推给了开发人员. 对于擅长前端和后台技术的工程师来说,他们缺乏设计能力,很难完成这项艰巨的任务.不满意的消费者.沮丧的用户,以及失败的项目,也就自然而然地出现了. 接下来,我们将介绍"商务Web应用程序"界面设计的基础知识.一般来说,人们可以提供

合理的布局,绚丽的样式,谈谈Winform程序的界面设计

从事Winform开发很多年了,由于项目的需要,设计过各种各样的界面效果.一般来说,运用传统的界面控件元素,合理设计布局,能够设计出比较中规中矩的标准界面:利用一些换肤的控件或者部分界面组件,能够设计出相对好看一些的界面效果,如以前很盛行的ActiveSkin.IrisSkin和DotNetSkin等,这些能够对传统的界面元素进行换肤,确实比标准灰色的界面控件好看了很多.不过随着界面控件的组件发展,目前一般倾向于是用较为大型的控件组,他们除了提供设计得体的界面控件外,还提供了非常多种绚丽多彩的界

设计思想:商务Web应用程序的界面设计

在smashingmagazine上看到这篇文章,讲的是Web应用程序设计流程和准则等方面,也许对大家有所帮助.翻译比较仓促,错误地方请多指教,查看原文点这里. 商务Web应用程序的界面设计 商务Web应用程序的设计常常被人们所忽视.我看到许多程序,它们既不符合商业目标,也不满足用户需求,它们有很差的用户体验,并造成了商业利润的损失.更夸张的是,有些设计师根本没有参与整个程序的开发流程,而是把全部职责都推给了开发人员. 对于擅长前端和后台技术的工程师来说,他们缺乏设计能力,很难完成这项艰巨的任务

什么是扁平化设计?扁平化设计方案突出简洁

文章描述:扁平化设计:你在这趋势中收获了什么? 扁平化设计-这个早在多年前非常流行的设计领域-又再一次卷土重来了.许多新网站以及需要重新设计的网站都纷纷采用了扁平化设计的方案,这种趋势无论是在网页设计或者移动端的设计方面都已经蔓延开了. 随着融汇了扁平化设计美学的windows8以及新版谷歌的推出,以及其他人气网站纷纷采用这种扁平化的主题设计,这种扁平化的趋势将很有可能受到更加多的亲睐. 你是否考虑过?你能够把它运用到你的项目当中吗?这种设计方案是否能够给你带来更加轻松的工作体验? 扁平化设计具

UI的扁平化设计趋势与拟物化设计

  实际上是这一两年,我们可以发现越来越多的程序的GUI变得"平面化"了:google.Microsoft.facebook.甚至apple的首席设计师Jony Ive也说过苹果会开始适当扁平化一点,WWDC2013的新logo也能看出这个暗示了. 于是很多人都问,为什么会有这样的趋势了? 我认为扁平化是一个必然趋势.并不是单纯的因为审美疲劳导致的为了变化而变化,而主要是因为数码化程度越来越高的日常生活中导致的.随着时代的变化,一方面是拟物化作用越来越少而退出主流,另一方面是扁平化更适

扁平化设计与质感设计: 他们有什么不同?

  两种相似的设计风格,一个基于另一个.一个是新热事物,另一个,有人猜测,已经以自己的方式成为一种时尚.一个是自发的-适应设计的趋势,另一个却是有目标-专用的设计指导规范. 你可能明白了扁平化与质感设计之间的冲突了. 但是,他们之间不同是什么呢,本质上是一个比另一个更好?在某些用途上更好?实际上,一些人想知道它们之间的差别有多大,让我们从最基本的开始:拟物化设计的身影出现在每一个身上. 拟物化设计, 在这个背景下,设计是为了模拟真实的物理世界.通常,这需要设计的在线应用的形式看起来像他们的真实世

扁平化设计和MATERIAL DESIGN有什么不一样?

  两种相似的设计风格,一个基于另一个.一个是新热事物,另一个,有人猜测,已经以自己的方式成为一种时尚.一个是自发的--适应设计的趋势,另一个却是有目标--专用的设计指导规范. 你可能明白了扁平化与Material Design之间的冲突了. 但是,他们之间不同是什么呢,本质上是一个比另一个更好?在某些用途上更好?实际上,一些人想知道它们之间的差别有多大,让我们从最基本的开始:拟物化设计的身影出现在每一个身上. 拟物化设计 拟物化设计, 在这个背景下,设计是为了模拟真实的物理世界.通常,这需要设

迷失在扁平化设计风潮

  文章对现在风靡全球的扁平化设计给予了深刻的思考.牡丹花确实是很美,但如果世界上都剩下了牡丹花了,你又会作何感想呢? 本文源自Medium,本文发稿时原文在短短几天时间内已经获得了364个推荐,中文版本由天地会珠海分舵进行编译.文章对现在风靡全球的扁平化设计给予了深刻的思考.牡丹花确实是很美,但如果世界上都剩下了牡丹花了,你又会作何感想呢?这里让我们从著名乐队别安的<光辉岁月>的一句歌词开始:"缤纷色彩闪出的美丽,只因它没有,分开每种色彩--" 扁平化的盛行 伟大的UI设