提出问题
question1.我看到书P27中写到“100%的代码覆盖率并不等同于100%的正确性”那么怎么样去确保100%的正确性?
写代码注意结构和代码规范,注释要写全,代码尽量精简,不要一坨坨的堆在一起。
在目前行业内的成熟方案有如下几个
1、代码评审。
2、单元测试
3、静态分析工具
还有几个手段是业界在尝试的
1、结对编程
2、代码建模
3、编译分析
question2.书中P353提出的“迷思之五——要成为领域的专家,才能创新”书中提到盛田昭夫等例子来引出一个问题为什么领域的专家有时候没有领域外的创新者那么有创意?
我觉得这个问题有待商榷,首先何为专家呢?百度上说指在学术、技艺等方面有专门技能或专业知识全面的人;特别精通某一学科或某项技艺的有较高造诣的专业人士。而我觉得盛田昭夫在我看来也是一位“专家”,谁能说不是科班出来的人就不是专家了呢?那么如果说领域的专家有时候没有领域外的创新者那么有创意,我想可能是因为那些学术的专家把时间都花在钻研学术上,正因为如此,他们的固定思维比较难以改变,所以不容易发现生活中的一些小创意。
question3.怎么做一名合格的软件工程师?有哪些指标来衡量一个软件工程师是否合格?
1.良好的编程能力 2.自觉的规范意识和团队精神 3.认识和运用数据库的能力 4.具有软件工程的概念 5.求知欲和进取心
我觉得软件工程师是否合格可能没有一个明显的指标,不同于搬砖的伙计能以搬多少转,搬多远,多快搬完,有无损坏等指标。但是这样就很难区分一个软件工程师是否是一个好的软件工程师了吧
question4.第五章介绍了团队和流程,那么从软件工程观点来说,用什么编写程序,软件开发效率最高?
用最熟悉语言,最熟悉工具和大脑。
越高级语言开发效率高,低级执行速度快。
我的观点是事先如果编写程序之前,我们的脑海中有个明确的框架,知道要怎么开始编写这个程序,并且能够运用熟悉的编程语言以及快捷方式,那么我们的软件开发效率应该会提升不少
question5.书中P358写到“成功的公司有价值观——追求利润”DEC公司认为,只有利润率超过50%以上的产品才值得去做,利润率低于40%的产品则不值得投入,那么是否我们一定要追求高利润率的产品呢?
计算企业的利润率就是算出来企业每一块钱的收入里面,有几毛钱是我们赚到的净利润。当我们算出这个值的时候,可以与同行业的竞争对手去比较一下,看看谁家的净利润比较高。通常,一家值得投资的好公司,它的利润率都会高于行业的平均水平,更多的时候它可能就是行业利润率最高的那家企业。
从我的个人经历来看,如果有一个好的产品,人们都需要它,但是整个行业利润率不够高,那对于是否要生产这个产品就很值得讨论了,如果这个产品确实能取得很大的市场份额,或是对企业的名声有所帮助,那么它的利润率低是不是也可以被接受呢?或者说只要能高于行业的平均利润率,就算是一个高利润率呢?