论设计的意识

建筑学里有句名言:结构决定质量。在我看来这句话有更加广泛的意义,比如,写作文,经常要打提纲;做论文要定结构;教育方面的体现,重在价值观和人生观的培养,正确的价值观和人生观才能使学者把知识用在正确的用途上。如同一棵小树,在小的时候我们就把他的主干扶直了,剩下的事就吸收养分,必然成为栋梁之材。
今天我们主要讲软件,我自己经常设计工具和系统,并深刻地体会到,要做一件事或开发一个东西,如果跳过了结构,直接从事细节性的元素着手,很可能会浪费很多精力和时间,因为单个元素脱离体系毫无价值,如果体系不够清晰,元素自身就无法确定自己是否符合体系要求。这是一个经得起考验的真理。
“设计的目的”是为了“使用”,就这么一句简单的话,可以权衡设计意识的摆放。是吗?好像体会不出来啊。我举个类似的例子,“养狗是为了消遣”。这就容易看出,养狗是消遣的一种手段,而不是目的,目的是消遣,我们可以有多种方式达到消遣的目的,养狗是最优的吗。不见得。所以我们在设计工具和产品的过程中,如果意识停留在“设计的目的”上,那么就不一定能达到使用的最佳效果;顺理,将意识摆放在使用的层面上,在此基础上寻找最佳的实现,就可以保证使用的最优。也可以说是我们在使用的层面上提出问题,在实现的层面上回答。方法总比问题多。我的结论是:(最佳)使用驱动设计。从需求上看,是自己跳出自己设计者的身份,站在使用者的角度思考需求,然后在回归设计者身份,开展工作。如此便可以最大程度上保证自己的设计最佳地符合需求。设计完成之后,在使用的过程中应该比较舒心了。但是仍然会有蹩脚的地方,这就都是小问题了,稍加补充和修正就可以达到真正的最佳。
所谓“最佳”,就是在使用我们的设计成果的过程中不产生任何附加或重复的东西。使用是衡量实现优劣的标准。这点意识上的微小差异可能会为你节省很多的时间。没有人愿意走弯路,即便有人愿意欣赏弯路上的风景,想必也不愿意天天这样欣赏。

我突然想起来 民众的创造力是无限的 我相信你也遇到过很烦人的情况

设计本身无可挑剔 可是 上了一定量的人数之后 什么乱七八糟的需求都有  限制不做吧 你会看到人民创造出无数种你想不到BUG用法,变态数据 作了吧 改着改着发现原来的设计根本不能用了。

其实最佳这个词在现实中从未出现过。我的理解。
[该贴被withmemores于2011-10-20 10:44修改过]

2011年10月20日 10:40 "@withmemores"的内容
如果跳过了结构,直接从事细节性的元素着手 ...

绘画艺术中有一种名词叫 “构图”,构图坏了,技法再好,都不行;软件中这个名词叫“架构”。

其实我这里不是 否认架构 而是想提出 到底哪些东西是不变的 又如何找到是一个很残酷的事.
只是感觉架构的最终方向就是 就大不就小 就粗不就细 总有很多你没有办法解决和舍弃的东西.我个人的理解.

作画时,有的人简单的几条线条就把图的分布勾画出来,有的人画大量线条作出细致分布。雕刻,有的人先简单雕刻作出头身四肢,有的人初步雕刻达到眼睛位置,手指动作。这是一个架构深浅问题。

我们思考问题时,是遵循着某个思想,或者说以某种逻辑去思考问题。那么这种逻辑就可以构成框架,而我们只需要根据这种逻辑去填充内容即可。

小程序,小问题,谈不上逻辑地思考问题,但大系统,大麻烦时,逻辑地分割组织,成为一种可靠手段。架构目的也在于此。

其实我的话的核心:架构围绕使用目的设计,在达到目的的前提下,使工作量最小。我所说架构并不仅仅指SSH等。泛指一切设计。

在任何领域都有永恒不变的东西,在持久(存储)方面,key-value就永恒不变的。在WMS领域,货品的库位间移动是永恒不变的。客户化都本质的零散表现。