希望在哪里
做了这几天的开发,发现现状和当初上学时没有什么区别。
《人月神化》的故事学计算机应该都知道,
就算不知道,当初老师也应该建议看过。
究竟为什么终究是个神话,
前阵子看报纸时,看到一个外国人说的,感觉很形象。
大意是:
很多人以为软件开发是,越多人效率越高。
那是他们以为软件开发如同盖楼房,是个体力活儿。
但实际上,软件开发就如同绘画一样,是个创造性劳动,
不是人越多,画得越快的。
在我看来,这也还是不太全面的。
从软件开发的整个过程(生命周期)来看,
分析、设计,应该是属于画画类的,
而编码应该是类似于体力活儿的。
这两种不同类型的活动需要的是不同方面的技能。
曾经有人说过,编程应该是严谨的,
就如同做一道数学证明题,证明你的程序是没有bug的。
(当然,这是个理想状态)
这里所说的编程,我觉得更侧重的是设计。
也正是因为这样,所以比较合理的开发过程,
设计阶段应该是占到了相当大的比重的。
社会分工的细化提高了生产效率,
软件开发过程的细化也应该会达到同样效果的。
可实际呢……
所谓的设计仅仅止于概要设计,
至于详细设计仍然是编程人员自己边写边想,太多的随意性……
这里不得不说说软件外包。
我遇到的,接触过外包的同事和同学都会提到,
给日本人做外包的时候,基本上学不到什么东西,
大部分设计的东西都已经在日本做好了,
他们只要按照设计的去写代码就行了。
抛开什么“日本人觉得中国人做设计不行”之类的看法不谈,
这种做法实际体现了工作细分的原则,还是有一定道理的。
就像盖房子,有人画设计图,有人砌砖瓦。
什么时候真的能细化到这样,
那剩下的就什么都好说了。
没有评论:
发表评论