设计师/产品经理:“他会在万众瞩目中出现, 身披金甲圣衣, 脚踏七彩祥云,咔咔咔把我的设计全部实现!”
成都创新互联公司专业为企业提供巴里坤哈萨克网站建设、巴里坤哈萨克做网站、巴里坤哈萨克网站设计、巴里坤哈萨克网站制作等企业网站建设、网页设计与制作、巴里坤哈萨克企业网站模板建站服务,十年巴里坤哈萨克做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
引子
偶然跟设计师同事聊天,谈到他们眼中的程序员应该是什么样的。
大叔:“好的程序员不应该三心二意,上来就学很多不同的语言,应该精通一门语言!”
小九:“那设计师会在Photoshop,Pixelmater,Sketch,balsamiq等等这些工具中,只精通一样,而不去学习别的吗?”
大叔:“这不一样,编程语言怎么能跟这些工具相提并论,比如Sketch比较适合快速实现一些Hi-Fi的高保真原型,Photoshop善于处理位图,balsamiq用于画一些Low-Fi的线框图,这些工具都是在不同情境和需求下使用的。”
小九:“我倒觉得这跟编程语言一样一样的。当需要写后台服务端的时候,我们用Java;要快速写工具脚本的时候用Ruby;要写页面交互的时候用Javascript;要写底层高性能代码的时候,用C或者C++。每个语言都有自己的特点,也有自己的使用场景。设计师应该不会说只要精通Photoshop或Sketch,其它工具就不用学了吧。怎么能为了一滴水,而放弃整片海洋!每一种设计工具都有自己独特的魅力,在学习中都会体会到不一样的乐趣 ”
语言/工具 vs 特性
熟悉PS的都知道,Photoshop中有滤镜、蒙版、图层等一系列特性,我们也往往是先学习工具,顺便就学会了这些特性。然而,其实这些特性比工具本身具有更高的复用性。现在几乎任何一款绘图软件,都会带有图层功能。
程序员也一样,往往是从语言开始,来认识语言的特性的。比如我们学习了C++,顺便知道了Template;从Java中知道了Exception的处理方法,从Javascript中知道了闭包,从Scala中知道了Monad等等。这些特性、思想在程序设计中的应用往往要比语言本身更重要。
除了语言,其实还有一些别的,也是程序员和设计师可以类比的。
思维方式
在程序世界里,有3种比较经典的编程范式:面向过程,面向对象和函数式。
这是程序员的三种不同的思维方式,而映射到设计师,可以理解成平面设计师习惯的平面思维和工业设计师习惯的立体思维。
模式
程序世界中的设计模式,是前人大量经验的总结,是在实战中形成的一些在面对具有一定共性的问题时所采用的***实践。
在产品设计中,也同样有一些模式可以遵守,比如现在的提醒功能,往往会使用内含数字的小红点模式。
再比如说消息通知功能,往往是采用消息中心的模式 。
再比如说一些常用的组件,如输入的文本框,在交互上共有诸如auto suggestion之类的模式。
有了这些模式之后,不管是在做程序设计还是界面设计,都可以有效的降低设计的复杂度。
Clean Code -|- Human Interface Guidelines
大部分情况下,我们不是一个人工作,而是一个团队工作。
作为一个程序员,我可能会阅读、修改团队内任何一个人的代码,这时候一套统一的规范就很重要,而《Clean Code》就是这么一套规范,让我们写出的代码可读性大大提高,便于团队彼此共享编辑代码。
而作为一个设计师,也有这么一套规范,比如iOS中的《Human Interface Guidelines》,或者Android的Material Design,这些规范用于指导我们在做界面设计的时候该如何选择合适的控件,应该有何种样式,如何在界面中合理的布局,并在团队中形成共识,好让大家可以在同一个工程中协调工作。
***
综合上面说的:看起来程序员和设计师的工作好像差得很远,但其实大家做的事情是有很多相通之处的。细细体味其中的不同,可以填补之前一些unknow unknow的空白,说不定还可以给你现在的工作带来一些新的灵感。
【本文是专栏作者“ThoughtWorks”的原创稿件,微信公众号:思特沃克,转载请联系原作者】
网页题目:开发与设计中那些共同的隐喻
分享链接:http://www.shufengxianlan.com/qtweb/news37/1037.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联