《构建之法》阅读之法02
今天我读了构建之法的第3、4章,其中第3章主要讲了软件工程师的成长,这一章主要是叫我们如何从一个新手成长成为高级工程师。
首先它向我们介绍个人能力的衡量与发展,其实就像那些职业篮球运动员一样,他们靠赛场上的一些数据,如命中率,篮板,助攻等显示自己的能力。软件工程师也有可以衡量自己的能力的数据。如完成同一个项目所需的代码行数,所花费的时间(人数*时间)等,同时在完成任务时我们应该尽量降低任务交付时间的标准方差,就是说我们在完成一件任务时要尽量接近自己预估的时间。
然后它让我们了解了软件工程师的职业发展,其中我们可以通过考级来证明自己的能力,同时一个软件工程师需要具备一定知识和能力,我们要努力发展自己的能力,从而实现从入门,熟练,带头人到大师的一步步跳转。同时我们也要学会进行自我评估,选择出几个方面追求“专和精”,其他的知识只需了解就可以了。
接着它提出了“技能的反面”这一概念,它通过一个玩魔方的例子,同样都是玩魔方,通过背口诀你可以将它还原,但口诀是公开的,并不是只有你一个人知道,所以说怎样才能证明你比别人玩的好呢?给你一个魔方,你把六个面恢复后,是否还能恢复成原来混乱的样子。这样你就可以显示你真正比别人强的地方了。这个例子告诉我们对一些知识不能只知其然,还要知其所以然,这样才能真正掌握好知识。
第4章主要是讲两人合作。
首先,他告诉我们编写程序要讲究代码的规范。如必要的缩进,一些必须要写的注释等,要想别人能够看懂我们的代码,注释必不可少。
接着,他为我们明确了代码风格的规范。缩进要用4个空格,行宽要限制在100字符内。在复合表示式中,要用括号清楚的表示优先级。命名要采用“匈牙利命名法”,在定义多个单词的变量时,要用大小写去区分它们。同时我们一定在必要的地方加上注释,这样别人才能看懂我们的代码。
代码设计规范:1现代设计语言中的绝大部分功能,都在函数中实现,我们设计函数的原则就是:只做一件事,并且要做好 2.合适使用goto,使逻辑更加清晰。 3.要为错误处理留出大量的时间 4.合适的处理好c++中的类
代码复审,就是要帮编写代码的人找出一些逻辑错误等,同时也有助于团队成员之间相互了解,互相学习,帮助新成员了解团队开发策略,编程风格及工作流程等它包括一系列复杂的步骤,我们必须认真完成这一工作,才能促进团队更好的发展。同时,在代码复审时要把眼光放得长远一些,要考虑到一些功能的修改会不会对其他功能产生影响。代码复审后,要注意将自己的错误进行整理,以避免下次犯同样的错误。同时,对于无法很快更正的错误,要在项目管理软件中创建bug吧他们记录下来。同时,在代码复审的核查表中,我们要注意1.概要部分 2.设计规范部分 3.代码规范部分 4.具体代码部分 5.效能 6.可续性 7.可测试性
结对编程,既然代码复审能发现这么多的问题。如果每时每刻都处在代码复审的状态,那不是很好吗?而在结对编程模式下,一对程序员肩并肩,平等的互补的进行开发工作,就是为了实现这种状态。而在编程时要有两个角色:驾驶员和领航员。其中驾驶员和领航员要不断进行互换角色,这样才能提高开发质量,更好的完成任务。
在两人合作的时候的阶段可以分为:萌芽阶段,磨合阶段,规范阶段,创造阶段和解体阶段。所以我们要的就是好好和同伴合作,寻找合适的方法,早日达到创造阶段争取。同时,在合作的时候我们注意要用正确的方法影响你的伙伴,这样才能使项目更好的被完成。而且我们还要正确的去评价别人,给别人以正确的反馈。