什么设计师应该学习编写代码[译]
来源:Just 不咯个 发布时间:2009-07-08 14:58:00
通常,在完成了一件网页设计后,设计师的无知都会显露无遗而备受指责。他们把创建网页代码的繁重工作都留给了程序员们。这种现象不只出现在网络开发行业,在软件及游戏开发业也是如此。
残酷的事实就是:开发进度可能会因设计师而停滞不前。为了追求最佳效率,设计师不仅需要描描画画,还需要能把它做出来!本文中,我想与读者分享一些为什么设计师需要学习编写代码的理由。
做现实可行的设计
有了一个最终产品将如何实现的明确印象,设计师将拿出更多实际可行的概念。作为开发进程中不可或缺的一份子,设计师肩负着确保他们的设计能够顺利转 移到网络介质上,同时还要考虑其可用性,网页易读性和可实现性。一个对用户友好的网站不仅有简洁清晰的浏览顺序逻辑,还向用户提供一切所需的信息而不会显 得咄咄逼人或是杂乱无章。想要知道一种 Web 布局是否可行的唯一途径就是亲自去了解如何建立一个网页。
使沟通更轻松
在几乎所有的设计与实现各自独立的产品中,设计组和实现组从没有满足过对方的期望,尤其是那些无形的产品,比如网站,软件和游戏。这通常归结于产品的期望和产品可行性的相互妥协,目前看来,这是难以完美统一的。解决之道是:设计师应该亲身尝试设计作品的实现,以避免沟通中的混淆,误解和误传。
方便的迭代开发过程
一个实践中的设计不应是绝对的。我的意思是,设计应该是灵活友好的,能够在修改以迎合系统技术限制的同时不扭曲其原有内涵。这些重复但必要的改动只 能由原设计师来实现。一个设计师/开发者能够比开发人员把设计重提到设计师手里进行改动更加高效。而且设计师和开发者之间——事实上经常如此——会产生摩 擦。
更好更和谐的结果
我常常喜欢把软件,网络或是游戏开发想成是管弦乐,而设计师是作曲家,开发者是乐团的指挥家。想象一下二者是同一个人将会怎样?交响曲将会是令人惊叹的,迷人的,纯正的!不仅是大师的神作,而且还是其本人亲自指挥的!
缩短开发时间
设计师同时充当程序员的角色意味着设计和编码的进度即使不是同时的也是连续的。结果就是开发周期的缩短——谁会不关心效率呢?
设计师更加市场化
现代的设计师需要提升自身的能力以保持个人价值,有一套技能是远远不够的,我们往往需要戴着不同的头衔:设计师,前端开发者,文章作者和项目经理。
通过学习实现你自己的设计,而不是让设计成为开发者手中的孤儿——你提升了自身价值。毕竟,在简历中提到设计和编码技能不会有坏处。相反,在这个金融危机时代的企业重组(参见:大规模裁员)和缩减开支的环境下,还能够强调一个人的重要性而免遭解雇。
然而,即使有这么多的理由支持设计师学习编写代码,这里还是有反对的声音。
引用 Lukas Mathis 的一篇有争议性的文章“设计师不是程序员”(注1)
如果设计师实现自己的设计,他会受制于两个不同的目标:代码的整洁和良好的用户体验。这两个目标是相互矛盾的。如果你要实现你自己的设计,你必然会为了代码的质量而妥协,这是不利于交互设计的。
实现自己设计的设计师面临着两个问题:他们知道一个很棒的新思路会建立混乱的代码,他们也知道如果改进用户体验,现有的代码会被打乱。这两者相互矛盾,因为用户体验都在于小的细节,而这些小细节最终毁于他们的不忍心使代码变得混乱。
这恰如其分的总结了“Web 开发纯化者”们所采取的强硬立场。他们是守旧派,倡导在设计和开发之间划清界限。显然,设计师为人类创作,开发者为机器创作。因此,用户体验设计师们应该设计出最可行的用户界面并让开发者做出最可行的编程决策。虽然这有一定的道理,但当我研究一个用户界面的时候,我从代码中寻找灵感的努力却以失败而告终。总之,在头脑中有一个技术及可用性限制的正确观念还是更有好处。
作者 John Urban 是加州大学的大二学生,主修计算机科学。
英文原文 http://sixrevisions.com/web_design/why-designers-should-learn-how-to-code/
猜你喜欢
- 1、并双击新建工程窗口中ActiveX DLL图标,VB将自动为项目添加一个类模块,并将该项目类型设置为ActiveX DLL。2、在属性窗
- HTML 5基本思维概念形成于2003年,之后W3C对页面超文本应用技术工作小组(WHATWG)开发的HTML草图颇感兴趣,这个小组的开发人
- 以前见过一个很漂亮的网页提示信息,就是把鼠标放到网页的文字或者图片上面就会有提示的那种透明的,还带个箭头,很漂亮,不知道谁在哪见过没有,感谢
- 如何在寸土寸金的首页上使页面的价值最大化,是每个网站设计者最关心的话题。用户关注的页面长度、宽度都是有限的。宽度自不必说,一般网站都会根据自
- 在产品开发中,由UED发起的项目越来越多,但是现在的问题是很难为其设定商业价值的目标。如果没有明确的商业价值目标,很多公司根本没办法花大成本
- 用下列代码即可:<%On error resume nextSet session=Creat
- Mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问.我的Mysql环境是ubuntu+mysql51.修改/etc/m
- 1、设置web.config文件。以下为引用的内容:<system.web> ...... <globalization
- 本文是从百度百科中摘录出来的,asp在it中还有Application Service Provider,也就是应用服务供应商的意思。概述A
- '************************************* '检测是否只包含英文和数
- parent.html 中的代码为:<iframe marginwidth="0"
- 2.彻底弄懂CSS盒子模式二(导航栏实例) 3.彻底弄懂CSS盒子模式三(浮动的表演和清除的自述) 4.彻底弄懂CSS盒子模式四(绝对定位和
- 如果当前绝对定位的元素需要透明(没啥内容、且不设置背景),背景元素有内容透出来的时候,IE6/IE7响应的不是期望的当前元素,而是背景元素。
- 斜角导航条看上去立体感比较强,但实现起来比较麻烦;这是前几天写的一个测试代码,实现时,本来想用简单的图片加负数来实现;但GIF图片对半透明的
- 函数名称:ReplaceHTML参数:@Textstr作用:去掉 @Textstr 内的HTML代码备注:需要给数据库访问者master.s
- Macromedia Dreamweaver MX 2004提供了更多功能强劲的可视化设计工具、应用开
- 分区视图联接来自一组成员的水平分区数据,使数据看起来象来自同一张表。SQL Server 2000 区分本地分区视图和分布式分区视图。在本地
- JavaScript图片水平翻转后垂直翻反转的特效一:<!--把下列代码加到body区域内--><SCRIPT langu
- QQ登录Banner增加了剧情的概念之后,已经推出了春节和情人节两期。这之后设想能围绕Banner做的更加丰富,对传统文化的体现也能更为深入
- 在我们设计网页的时候,总会遇到一些不愉快的事情,最常见的莫过于在后台添加内容后才发现显示的页面被撑开,导致网页极度不美观。以前大