Chinaunix首页 | 论坛 | 博客
  • 博客访问: 915255
  • 博文数量: 380
  • 博客积分: 3495
  • 博客等级: 中校
  • 技术积分: 3996
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-02 09:35
文章分类

全部博文(380)

文章存档

2015年(2)

2014年(5)

2013年(9)

2012年(9)

2011年(67)

2010年(103)

2009年(182)

2008年(3)

我的朋友

分类:

2009-07-20 22:26:21

设计到底是什么,一个良好的设计能起到什么作用,它的判断标准是什么。
每天我们在软件开过过程中都会不断的听到设计这个词。
那么它到底是什么?
设计简而言之就是程序的组织方式与交互方式。
它可以向上影响到程序的部署,界面。向下影响到程序的代码文件的目录结构。
可以说,设计是沟通于程序整个生命周期灵魂。
就像一个建筑的设计能决定最终的实体建筑一样,从建筑行业借鉴过很多的软件行业里的设计最终也能决定实体软件。
判断的标准呢?可以说有一个没有标准的标准,基本上从下面几个方面来进行衡量。
1.灵活性:也就是程序是否能够以最小的修改来对应最大的功能性需求变化。
2.健壮性:最讨厌人家叫这个特性叫鲁棒性。凡是应用这个词的我觉得特像日本鬼子,明明自己有相当优美的词汇不用,非得装X,搞出一个大家不明白自己到处显摆的来。基本上一个好的设计是可以决定程序本身的健壮性的,就像一个好的力学结构设计可以决定一栋楼可以建多高一样。
3.扩展性:一个好的程序设计是可以以非常容易的发式来支持扩展,提供新机能。这方面,我觉得eclipse可以说是精典中的精典了。

我个人认识可以再加上如下几点
4.可读性:一个好的软件无论从代码还是从设计是应该是非常容易理解的。所谓的下里巴人才容易被广大用户所接受。就像服装设计,你可以在T台上用个麻袋片,也可以用个像皮筋做衣服。不过现实世界,还是纯棉的最好。
5.适度抽象:一个好的软件应该是对现实世界的适度抽象实现。如果没有抽象,那么软件机能会非常臃肿,如果抽象过度,就是毕家索了。
6.符合当前流行技术并有前瞻性:一个好的设计一定会符合当前流行的技术趋势,并且有一定的前瞻性。因为当前流行的技术肯定是比较成熟的,应用比较广泛的,稳定的技术。采用它肯定会降低项目的技术风险。而有前瞻性,则意味着项目的技术生存周期比较长,这对于一个产品来讲是非常有好处的。可以想像一个根基不变的与一个经常要全推翻重来的东西相比的稳定性。
7.符合自身所处的公司的技术特点:只有适合的才是最好的。
阅读(436) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~