论坛首页 Web前端技术论坛

企业级Web应用用户界面设计杂谈[原创]

浏览 64196 次
该帖已经被评为精华帖
作者 正文
   发表时间:2007-11-23  
sslaowan 写道
其实我有一个问题是,作者的某个观点是不是在说企业级开发中应该是UI-Driven Development(因为lz多次提及UI设计师是用户与软件开发人员的桥梁,和使用原型法向用户展示系统),上次和一个日企的人聊天,他们就是先做UI,所有的需求都是通过UI来确定的,而且他们采用V模型。然后我问他,那用户复杂的业务流程你们怎么办,这个通过UI能讨论出来吗?而且他们只有UI设计师和用户交流,后面的工程师就不再和用户有联系了,我觉得这存在很大问题。
    我觉得作者作为专业的UI Designer来探讨或者说传授UI Design的知识时,是否夸大了UI Design的作用,这点是否值得商榷。


业务应该有专门的BA或SA之类的人来负责,当然,一个好的行业UI Designer对业务的了解应该是仅次于商业分析员的..UI Designer在确定原型前会与BA多次交流来确定的..
ps:楼主写得很好
0 请登录后投票
   发表时间:2007-11-24  
需求变了,客户挑了,从功能到强调用户体验 ,UI设计地位自然提高,忽视这些只会让产品、项目难以征服客户。
不过这样让面对01代码更热衷的程序员解决--显然困难,但一方面“美工”的又不能兼顾业务问题。所以“UI设计师”应该是被认为能“内外兼顾”的复合型人才。


**希望是由于我的的浅博才发表上述留言***。
0 请登录后投票
   发表时间:2007-12-13  
UI确实是一个艺术很深的研究,也是一个"面子模块",对于项目成败而言有着极其重要的地位.而不是光一个美工就可以胜任的工作,应该同时具备程序开发的能力.  推荐一个网站:http://www.chinaUI.com  (好象是这样写的.)
0 请登录后投票
   发表时间:2008-01-12  
很有趣,不过还是期待将来能够进一步展开,说的更透彻一些。如果有兴趣按照一本书的体例继续写下去,可以跟我联系。

jellyme 写道
2、过硬的技术能力:你可以不会写Java,但你绝对不可以不清楚Java是什么,他能够实现什么。即使你不能写代码,但你起码要懂得如何去“实现”。举个例子,你要做一个Grid控件,首先,你应该清楚,到底有哪几种数据格式,以及其存储方式:既可以通过HTML的Mark来获取数据,亦可以通过JSON对象或Array,又或者是XML甚至于字符串。其次,你要知道在Server端实现和在Client端实现到底哪个更适合当前的环境。这些都要依靠过硬对技术和丰富的经验,不懂技术的UI设计师,既做不出合理的设计,也不可能和开发人员做到有效的沟通。简言之,UI设计师起码要精通主流的表现层开发技术(如果是做Web表现层,一般需要精通HTML、CSS、Javascript、XML技术,甚至JSP、Java也要达到工作层),对于市面主流的设计模式,技术路线以及开源框架都要有足够的了解。可以说,UI设计师在技术素质能力方面,要尽可能的朝着“表现层架构师”的方向去努力。

这对UI设计师要求过高了,空想的成分太大。
举个例子,我的朋友Windy在ThoughtWorks就是做UI设计师这个岗位。她在交互设计和用户使用体验领域有着非常专业的素养,但是她并不熟悉Ajax、JavaEE或者Ruby on Rails。这并不妨碍她做出优秀的设计。
实际上我反对UI设计师过多考虑实现细节和难度,那样会严重限制她们的设计能力。UI设计师主要使用左脑,架构师和程序员主要使用右脑,左脑和右脑都非常发达的人极为罕见。过多地使用右脑,甚至还会损害左脑的能力,损害创造力和灵感。
当然,UI设计师绝对有必要了解一些技术实现方面的限制,但是这跟要求UI设计师精通技术实现是两码事。
jellyme 写道
他们写的代码越来越少,CSS越来越多,慢慢的,结构与表现分离了,HTML变成了通篇的DIV和UL,CSS文件如天书一般洋洋洒洒数十kb。因此,结构与表现分离是一个思想上的自然演变过程。我看到今天,有那么多的设计师以此为准则、以此为规范,不禁感慨,WebUI不是那样的,Table无罪。当你因为无法用DIV+CSS实现某种布局转而引入大量的JS或干脆换个设计的时候,这么做值得么?

这段话对CSS存在着很大误解。分离页面的结构和表现其实跟UI设计师关系不大,这样做并不能帮助UI设计师得到完美的设计。这样做的真正目的是使得HTML恢复其原本的语义。你知道,HTML最初诞生的时候是没有任何表达表现含义的标签和属性的。这样的HTML虽然显示出来一点都不迷人,但是它对于程序来说是非常友好的。后来在浏览器大战的岁月中,HTML增加了大量表达表现含义的标签和属性。程序解析HTML越来越困难,因为内容真正的语义淹没在大量表达表现含义的标签和属性之中。页面开发过于依赖基于table的布局恶化了这种情况。W3C后来将HTML改造为XHTML,并且创造出CSS,就是为了扭转这种日益恶化的趋势。如果能够将页面的表现通过CSS完全分离出来,那么HTML就可以得到极大简化,其中内容原本的语义就可以更加容易地由程序来解析,这对于搜索引擎一类应用来说是非常重要的。如果无法得到搜索引擎的青睐,一个网站就很难实现它的业务目标。在将页面的结构和表现分离开之后,还可以使用Microformat技术来更加明确地标注页面内容的语义。
所以我们在开发一个页面的时候,既要使得它对于人类用户是友好的,也要使得它对于搜索引擎一类的程序是友好的。UI设计师往往不关注后面这类需求,他们确实不需要关注,但是并不等于说这类需求不重要或者不存在。

另外,将页面的表现分离出来之后,还有助于表现信息的重用。通常一个CSS文件可以控制数十个甚至上百个页面的表现。将表现信息放在一个地方就是程序员经常喜欢挂在嘴边的DRY(Don't Repeat Yourself!),这样做可以大幅降低将来界面改版时的工作量。实现表现信息的重用所带来的另一个好处是CSS可以被浏览器缓存,这样服务器只需要传递简化的HTML给客户端,因此可以减轻服务器的压力。
0 请登录后投票
   发表时间:2008-01-14  
感谢回复!我原本打算多写一些的,可是一方面,山口山的事业在继续=.=|,另一方面,想法太多,涉及的内容又很杂,一时间不知道从何说起。怕误导他人,所以不敢继续写了。可能再做一些技术积累后,思路就会更加清晰吧,那个时候再写出点儿有价值的东西来也不迟。

dlee 写道
这对UI设计师要求过高了,空想的成分太大。
举个例子,我的朋友Windy在ThoughtWorks就是做UI设计师这个岗位。她在交互设计和用户使用体验领域有着非常专业的素养,但是她并不熟悉Ajax、JavaEE或者Ruby on Rails。这并不妨碍她做出优秀的设计。
实际上我反对UI设计师过多考虑实现细节和难度,那样会严重限制她们的设计能力。UI设计师主要使用左脑,架构师和程序员主要使用右脑,左脑和右脑都非常发达的人极为罕见。过多地使用右脑,甚至还会损害左脑的能力,损害创造力和灵感。
当然,UI设计师绝对有必要了解一些技术实现方面的限制,但是这跟要求UI设计师精通技术实现是两码事。


可能我比较特别,我是偏技术型的,我做UI的初衷也和大多数UI设计师不同,传统意义上来讲,UI设计师只需要对用户负责,以用户为中心。但是我一直认为,UI设计师不仅要满足用户的需求,同时也应该适当减少开发人员的负担。不能说因为你觉得圆角漂亮,圆角有更好的“用户体验”就让开发人员为了个圆角忙得焦头烂额。作为UI设计师的你,完全可以采用另外一种皆大欢喜的做法,既能让用户满意,又可以减轻开发人员的负担——我把它叫做“双赢”的局面。因此,我是极力主张UI设计师应该了解技术的——不知道实现的代价,你如何在满足用户需求的情况下节约成本呢?

dlee 写道
这段话对CSS存在着很大误解。分离页面的结构和表现其实跟UI设计师关系不大,这样做并不能帮助UI设计师得到完美的设计。这样做的真正目的是使得HTML恢复其原本的语义。你知道,HTML最初诞生的时候是没有任何表达表现含义的标签和属性的。这样的HTML虽然显示出来一点都不迷人,但是它对于程序来说是非常友好的。后来在浏览器大战的岁月中,HTML增加了大量表达表现含义的标签和属性。程序解析HTML越来越困难,因为内容真正的语义淹没在大量表达表现含义的标签和属性之中。页面开发过于依赖基于table的布局恶化了这种情况。W3C后来将HTML改造为XHTML,并且创造出CSS,就是为了扭转这种日益恶化的趋势。如果能够将页面的表现通过CSS完全分离出来,那么HTML就可以得到极大简化,其中内容原本的语义就可以更加容易地由程序来解析,这对于搜索引擎一类应用来说是非常重要的。如果无法得到搜索引擎的青睐,一个网站就很难实现它的业务目标。在将页面的结构和表现分离开之后,还可以使用Microformat技术来更加明确地标注页面内容的语义。
所以我们在开发一个页面的时候,既要使得它对于人类用户是友好的,也要使得它对于搜索引擎一类的程序是友好的。UI设计师往往不关注后面这类需求,他们确实不需要关注,但是并不等于说这类需求不重要或者不存在。

另外,将页面的表现分离出来之后,还有助于表现信息的重用。通常一个CSS文件可以控制数十个甚至上百个页面的表现。将表现信息放在一个地方就是程序员经常喜欢挂在嘴边的DRY(Don't Repeat Yourself!),这样做可以大幅降低将来界面改版时的工作量。实现表现信息的重用所带来的另一个好处是CSS可以被浏览器缓存,这样服务器只需要传递简化的HTML给客户端,因此可以减轻服务器的压力。


并不是我不了解或误解CSS,而是我想通过自己的经历给Div派的设计师们提个醒儿,table无罪。用table很容易就可以实现的布局,为什么非要用蹩脚的Div+CSS去实现呢——比如高度相同的左右布局,用Table极其简单,用Div真的就那么必须么?我们总是在设计的时候喊着这样的口号——“用户体验”和“兼容性”。甚至让我们的应用可以在手机上访问,可是,有人要求设计师必须这样做么?用户真的有这样的需求么?本来用户只需要你支持PC上的IE就足够了,你却为了所谓的“优美”和“兼容性”顶着巨大的压力,浪费成本浪费时间。用户体验,到底是UI设计师的体验还是用户的?我们总是为了自己的一己私欲而忙碌奔波,却还要把这份私心强加到“用户体验”的头上,我觉得这是不对的。
0 请登录后投票
   发表时间:2008-01-15  
不好意思,打个岔。我想UI设计师多用的应该是右脑,而程序员是左脑。

除了上面一条,很同意dlee的说法,大部分的人是以左脑为主导,在使用右脑进行创作的时候常常会受到左脑的干涉从而使结果打折扣。有兴趣与左右大脑对抗的可以看看那《想艺术家一样的思考》这本书。

至于UI设计师这一角色,能了解一些技术局限性就够了。把握好什么是能实现的,什么是容易实现的,什么是较难实现的,什么是不能实现的已经很不容易了。

后面谈到的DIV,CSS,用table还是div完全是设计师的能力素质问题。
0 请登录后投票
   发表时间:2008-01-16  
如果企业实力雄厚,还是把UI设计师的职责细分,

就像前面提到的淘宝/阿里巴巴ued团队.
视觉设计的牛人+交互设计的牛人+程序的牛人>一个全能UI设计师.

一段时间内一个人的知识储备及深造的能力有限,
只有把每个环节做强,再有一个精干的项目负责人,就可以达到目的了.
0 请登录后投票
   发表时间:2008-01-20  
引用
视觉设计的牛人+交互设计的牛人+程序的牛人>一个全能UI设计师.

这样令我想起一个情景:
引用
溫家寶總理親切看望朱光亞、何澤慧、錢學森和季羡林时,錢學森很有信心地說:“處理好科學和藝術的關系,就能夠創新,中國人就一定能賽過外國人。”

请恕小弟我的冒昧。
0 请登录后投票
   发表时间:2008-01-20  
企图一个人掌握所有的技能,这个倾向是危险的。有这种倾向的人往往忽略了在团队中与他人的协作和沟通。潜意识里面总是想:我要是会了xxx(例如Photoshop,或者Rails),你就没处混了!

一个优秀的软件产品(桌面应用或Web应用),除了那些非常简单的产品以外,几乎全部都是多人合作的结晶。即使一个人综合了艺术和技术方面的技能,如果缺乏市场头脑,或者缺乏项目管理的能力,仍然做不出来好的产品。

如果是我来组建一个开发团队,我几乎肯定会把这样没有合作精神的员工排除在外。当然我不是说他没有价值,他还是很适合那些单打独斗就可以完成,需求相对简单的场合的。
0 请登录后投票
   发表时间:2008-01-20  
团队开发(3人以上)最好分工明确。
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics