Smart,设计,质量,和其他

看了Smart的讲义后,这两天总是眼前跑来跑去的总是那只小绵羊。我的困扰在于,即使能搞出个健健康康的skinny绵羊,怎么才能让它健康的成长起来呢?

又要开始新的项目了。和上一个项目脱离了一阵子,听到同事的消息的都是代码质量不乐观。虽然赶上了最后期限,但bug还是比较多。现在正帮忙的一个产品,也是到了最后期限的前夜,爆出来一大堆的问题。直觉,下个项目,也还是会重复这个过程。

无意中看到两年前自己的blog,有这么一句:“软件的核心功能都是简单的,但带有大量的周边和附加功能。使整体变复杂,也会干涉到核心的设计,使原来优雅的代码变坏掉。”(http://leonone.spaces.live.com/blog/cns!44A6A6DD6A3C5D41!183.entry) 每做完一个项目,都会想,怎么才能让代码不要变化掉?两年了,没答案。有方法,没办法。

保持质量,谈何容易。

即使是我自己,有时也忍不住一时之快的诱惑,用简单粗暴的方法去补一个漏洞。天长日久,积沙成塔,代码虽然不断增长,质量却越来越差。当严重到要摆放的桌面上的时候,往往已经是积重难返。即使狠下决心,也只是在一堆补丁上再缝缝补补,能得到什么?还是一堆补丁而已。

不这样又怎样?QE才不管架构不架构。搞点数据,算算百分比,就能判断质量好不好。

Process和QE有用么?只能让数据看上去有质量。想让代码跑起来还不容易?程序员犯起懒来,你走个流程就能查出来么?

Smart的核心是,skinny小绵羊一定要足够精巧,足够健康;在迭代过程中要始终保持这一点,因为绵羊就是架构,架构的质量是唯一重要的质量 。一语道破天机。

现在又要开始做prototype了。要多少effort才能让它足够精巧,足够健康?所有人都认为只要这个小绵羊能跑能跳就行了。当务之急是让它快快长大。质量当然重要,但下面这两周是花力气做设计搞架构保质量还是实现十七八个功能点?leader们的心情都是焦急的,一只肥绵羊,虽然病歪歪的但看上去比旁边那只黑黑瘦瘦的好多了,何况有病还得慢慢治不是...

就算你这小绵羊健康了强壮了,后面还有无数人要在这个家伙身上迭代呢。你管得住人家把乱七八糟的代码都往里面塞么?今天这个功能用这个方式搞不定了,没问题咱们找个work around,明天那边有麻烦了,还是找个bypass的,三折腾两折腾的,好汉也架不住人多何况是个任你摆布的代码小绵羊呢...

心情特别差。项目做烂掉还得做,明知要出事还得往下走。知道做好的方法就是没办法。知道这样不行还是得这么行。每天用积极肯干吃苦耐劳的方式把代码往死里整,每天补丁摞补丁的还成了业绩了。

没有银弹。没有银弹。

洗洗睡吧。

posted on 2008-09-10 20:39  Realloc  阅读(119)  评论(0)    收藏  举报

导航