论坛首页 海阔天空论坛

程序员和建筑工人

浏览 14224 次
精华帖 (0) :: 良好帖 (0) :: 灌水帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-10-16  

条件的优先级。

用一个规则定义。
老实,优先级 10
听话,优先级 20

如果优先级,就用第一个条件。

需求矛盾,程序员要提出来,帮助客户理解需求。

100% 质量无法保证的。只能无限接近。
0 请登录后投票
   发表时间:2006-10-17  
number017 写道
不知哪时在哪里看到一个软件工程和建筑工程的对比...

前日吃饭的时候无聊,便提到这个:"你看,对面那栋漂亮的楼房。把他们建起来的是一群建筑工人,有些甚至被我们称为民工(这里,无歧视);而我们做软件的,大多受过高等教育,甚至很多被成为精英,为什么还把软件搞得这么糟糕。自从1968年软件危机第一次被提出以来,还长期存在。这是为什么呢?"

旁边的JJ说话了:"因为建筑师叫那些民工怎么做,他们就怎么做。而大多数软件开发人员都很有个性、很有想法,所以困难重重。"

偶抬杠:"这么说,去招一批民工来做软件,就可以解决这个问题?"

JJ无语,但还是很坚持。

旁边的猥琐男见状,正是提出自己高论的好时机:"这说明了建筑工程发展得很好了,而软件工程还没到达那个境界。这是一个长期、持续、抗争的过程,不过有一天会好起来的。"

嗯...科学的乐观主义者,他还在想着银弹。

偶想想,一位大师上课的时候说过:"软件本身是技术,但带着与生俱来的艺术性。"很多东西具有两面性,可以拿摄影来对比:一般人认为摄影是艺术,但它带有与生俱来的技术性。这大概不算矛盾,但却是统一体。

大师的回答着实很能回到这个问题:艺术能有完美的吗?所以软件也不能。你可以把软件的一面--技术做得很好,用很合理的技术,高超的算法;但是你永远不能把软件的另外一面--艺术做到极致。难道这就是传说中的哲学?

Oh,My God!!!我怎么会提起哲学?

实际上众多的人谈论软件危机,说1968年就提出的这个问题到现在还没有解决,并且说没有银弹就是这个问题永远不能解决的理论基础。这似乎给我们暗示出,现在我们所要重点解决的问题同1968年的时候完全一样。切实的说,这样的看法是错误。当然我们并不是说1968年出现的问题我们已经解决,而是说今天我们面对的是更加新的问题。或者说新出现的问题的优先级别比1968年那个时候出现的问题优先级别高。
0 请登录后投票
   发表时间:2006-10-17  
robbin 写道
number017 写道
不知哪时在哪里看到一个软件工程和建筑工程的对比...

前日吃饭的时候无聊,便提到这个:"你看,对面那栋漂亮的楼房。把他们建起来的是一群建筑工人,有些甚至被我们称为民工(这里,无歧视);而我们做软件的,大多受过高等教育,甚至很多被成为精英,为什么还把软件搞得这么糟糕。自从1968年软件危机第一次被提出以来,还长期存在。这是为什么呢?"

旁边的JJ说话了:"因为建筑师叫那些民工怎么做,他们就怎么做。而大多数软件开发人员都很有个性、很有想法,所以困难重重。"

偶抬杠:"这么说,去招一批民工来做软件,就可以解决这个问题?"

JJ无语,但还是很坚持。

旁边的猥琐男见状,正是提出自己高论的好时机:"这说明了建筑工程发展得很好了,而软件工程还没到达那个境界。这是一个长期、持续、抗争的过程,不过有一天会好起来的。"

嗯...科学的乐观主义者,他还在想着银弹。

偶想想,一位大师上课的时候说过:"软件本身是技术,但带着与生俱来的艺术性。"很多东西具有两面性,可以拿摄影来对比:一般人认为摄影是艺术,但它带有与生俱来的技术性。这大概不算矛盾,但却是统一体。

大师的回答着实很能回到这个问题:艺术能有完美的吗?所以软件也不能。你可以把软件的一面--技术做得很好,用很合理的技术,高超的算法;但是你永远不能把软件的另外一面--艺术做到极致。难道这就是传说中的哲学?

Oh,My God!!!我怎么会提起哲学?


这种类比没有什么意思。

你怎么知道一个外表看起来很漂亮的building,里面就不是充满各种各样问题的呢?现在豆腐渣工程,盖的很糟糕的小区比比皆是。买房子一不小心买到质量残次的楼盘,然后打官司的,你随便找到房产论坛去看看吧,多到令你吃惊的地步。

开发软件也是一样的,你让美工做个漂亮的首页,然后给客户demo一下,唬的客户眼花缭乱的,那还不是小意思的事情吗?他怎么可能知道你里面的代码全部都是垃圾?

楼房,你不搬到里面住个几年,就光在外面看着光鲜,贸贸然下定论,说这个building有多好多好,就和你给客户demo一下,那都是一个意思。所不同的地方在于,楼房要盖好了才能demo,但是软件只要美工做几个页面就可以demo了,所以楼房不会离谱的太狠而已。


我用这个类比的意思是,在我们看来,软件所存在的问题要比建筑来得多,来得不可救药...而不是仅仅说外表。
现实是,软件中糟糕的软件的比例要比建筑中的"豆腐渣工程"的比例来得高,在我看来是高很多,虽然没有准确的。记得某某人说过"要是这个世界是由程序员制造出来的,那么它将不可居住!"
0 请登录后投票
   发表时间:2006-10-17  
ozzzzzz 写道

实际上众多的人谈论软件危机,说1968年就提出的这个问题到现在还没有解决,并且说没有银弹就是这个问题永远不能解决的理论基础。这似乎给我们暗示出,现在我们所要重点解决的问题同1968年的时候完全一样。切实的说,这样的看法是错误。当然我们并不是说1968年出现的问题我们已经解决,而是说今天我们面对的是更加新的问题。或者说新出现的问题的优先级别比1968年那个时候出现的问题优先级别高。

所以我想软件危机的提出,以及宣布没有银弹,更说明了软件的艺术性。
所以我们想把软件工程化的想法最终会出现很多问题,就像我们现在碰到的许多问题一样。
个人觉得XP倒是很多考虑了软件的艺术性这一面...
即将跑题
0 请登录后投票
   发表时间:2006-10-17  
引用
我用这个类比的意思是,在我们看来,软件所存在的问题要比建筑来得多,来得不可救药...而不是仅仅说外表。
现实是,软件中糟糕的软件的比例要比建筑中的"豆腐渣工程"的比例来得高,在我看来是高很多,虽然没有准确的。记得某某人说过"要是这个世界是由程序员制造出来的,那么它将不可居住!"


那只不过因为你从来不关心楼盘,估计也没有自己买房子住,所以才有这种错觉。

软件中糟糕的比例并不比楼盘中的糟糕比例高,你见过没有问题的楼盘吗?不信你去房产论坛泡泡看,连那些获奖的楼盘,照样在论坛被业主痛批,我就没见过没有问题的楼盘。
0 请登录后投票
   发表时间:2006-10-17  
robbin 写道
引用
我用这个类比的意思是,在我们看来,软件所存在的问题要比建筑来得多,来得不可救药...而不是仅仅说外表。
现实是,软件中糟糕的软件的比例要比建筑中的"豆腐渣工程"的比例来得高,在我看来是高很多,虽然没有准确的。记得某某人说过"要是这个世界是由程序员制造出来的,那么它将不可居住!"


那只不过因为你从来不关心楼盘,估计也没有自己买房子住,所以才有这种错觉。

软件中糟糕的比例并不比楼盘中的糟糕比例高,你见过没有问题的楼盘吗?不信你去房产论坛泡泡看,连那些获奖的楼盘,照样在论坛被业主痛批,我就没见过没有问题的楼盘。
我爸就是搞建筑的,他们的惯例是,在施工前有一个设计图。

但是,在施工结束后,有一个完工图。

很头痛的一件事情,就是怎么把施工设计图,改成完工图。因为有不少地方都造错了。
0 请登录后投票
   发表时间:2006-10-17  
建造房子的过程是一个建筑材料的物理和化学变化的过程。起支配作用的是建筑材料的物理和化学性质,以及相关的物理,化学定律。

软件开发本质上是个认知过程。要理解用户的需求,然后教会计算机去实现用户的需求。这是一个知识的获取,加工和转化的过程。

这两个完全不同的过程怎么能放在一起比较呢?
0 请登录后投票
   发表时间:2006-10-17  
尽扯蛋
0 请登录后投票
   发表时间:2006-10-17  
buaawhl 写道

条件的优先级。

用一个规则定义。
老实,优先级 10
听话,优先级 20

如果优先级,就用第一个条件。

需求矛盾,程序员要提出来,帮助客户理解需求。

100% 质量无法保证的。只能无限接近。


我看再复杂一点就可以用“规则引擎”来动态计算了,主人可以远程将规则录入...
0 请登录后投票
   发表时间:2006-10-17  
robbin 写道

那只不过因为你从来不关心楼盘,估计也没有自己买房子住,所以才有这种错觉。

软件中糟糕的比例并不比楼盘中的糟糕比例高,你见过没有问题的楼盘吗?不信你去房产论坛泡泡看,连那些获奖的楼盘,照样在论坛被业主痛批,我就没见过没有问题的楼盘。


哈。或许这个对比不太恰当,但我想讨论的并不是楼盘如何
0 请登录后投票
论坛首页 海阔天空版

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