针对第三章软件工程师的成长。
软件工程师的思维误区。
分析麻痹:想弄清楚所有细节、所有依赖关系后再动手,心理上过于悲哀,不想修复问题,出了问题都赖在相关问题上。
不分主次,想解决所有依赖问题:想马上动手修复所有主要和次要的依赖问题,然后就可以“完美地”达成最初预定的目标。
过早优化:写程序时,经常陷入某一个局部的问题,花大量时间对其优化,无视这个模块对全局的重要性。
过早扩大化/泛化:灵光一闪,突然想到可以把某个功能或类型抽象出来,这样就适合所有情况。
我过去怎么做的:
这些问题都经常犯,设计的时候分析很长时间。
解决问题时,着手于一个问题,但是如果发现了另一小个问题就可能会陷进去,忘了自己本来主要的问题。
结合书中所讲,这样做的坏处:
1.会浪费很多的个人时间
2.如果是团队项目的话,可能会拖慢团队的进度
3.浪费了精力,没有把主要精力放在主要问题上,降低效率。
提出一个解决的方法:
设计的时候把概要设计好就行,具体的每个方法怎么写实现的时候在分析。
把遇到的问题记录下来,然后分出来主次,先解决主要的问题,在解决次要问题。