2018--20179215--《构建之法(第三版)》第四章两人合作

20179215袁琳 20179215袁琳     2022-10-22     252

关键词:

构建之法 第四章 读书笔记

4.1代码规范

代码规范可以分为两部分:

  • 代码风格规范—主要是文字上的规定
  • 代码设计规范—牵涉到程序设计、模块之间的关系、设计模式等方方面面的通用原则

4.2代码风格规范

代码风格的原则是:简明,易读,无二义性。

  • 缩进:4个空格的距离阅读性最好。
  • 行宽:可限制为100个字符。
  • 分行:不要把多条语句放在一行,每个“”和“”单独占一行,不要把多个变量放在同一行。
  • 命名:不要提到类型或其他语法方面的描述;避免过多的描述;避免可要可不要的修饰词。
  • 下划线用来分隔变量名字中的作用域标注和变量的语义。
  • 大小写:有Pascal形式和Camel形式
  • 所有的类型/类/函数名都用Pascal形式,所有的变量都用Camel形式
  • 类/类型/变量:名词或组合名词,如Member、ProductInfo等
  • 函数则用动词或动宾组合词来表示,如get/set、RenderPage()
  • 注释:复杂的注释应该放在函数头,解释参数的类型。

4.3代码设计规范

  • 代码设计规范不光是程序书写的格式问题,而且牵涉到程序设计、模块之间的关系、设计模式等方方面面。
  • 现代程序设计语言中的绝大部分功能,都在程序的函数中实现。关于函数最重要的原则是:只做一件事,并且要做好。
  • 函数最好有单一的出口,为了达到这一目的,可以使用goto,使用goto有助于程序逻辑的清晰体现。
  • 参数处理:对从外部传递过来的参数,要验证其正确性。
  • 断言:当你觉得某事肯定如何时,就可以使用断言:Assert(p != NULL)

4.4 代码复审

  • 代码复审就是看代码是否在“代码规范”的框架内正确地解决了问题,主要有自我复审,同伴复审,团队复审三种形式。而软件工程中最基本的复审手段就是同伴复审。
  • 代码复审的目的在于:找出代码的错误;发现逻辑错误;发现算法错误;发现潜在的错误和回归性错误;发现可能需要改进的地方;教育传授经验。
  • 代码复审的核查表:概要部分;设计规范部分;代码规范部分;具体代码部分;效能;可读性;可测试性。

4.5 结对编程

  • 将代码复审发展到极限(极限编程),不间断复审
  • 开发中的复审主要包括:设计复审;代码复审;测试计划复审;文档复审。

4.6 两人合作不同阶段和技巧

  • 两人合作分为萌芽阶段、磨合阶段、规范阶段、创造阶段、解体阶段。
  • 影响他人的几种方式:断言、桥梁、说服、吸引。

    正确地给予反馈:

  • 最外层:行为和后果
  • 中间层:习惯和动机
  • 最内层:本质和固有属性

《构建之法(第三版)》第三章

3.1个人能力的衡量与发展1.软件开发流程不光指团队的流程,还包括个人开发流程。把每个人的工作有序地组织起来,就是团队的流程。“有序”,并不是“无争论”。每个人的工作质量直接影响最终软件的质量。2.初级软件工... 查看详情

《构建之法(第三版)》第一章

...间的依赖关系、编译参数、链接参数等。这些都是软件的构建过程。和软件开发活动(构建管理、源代码管理、软件设计、软件测试、项目管理)用关的内容是软件工程的核心部分,由此推论软件企业=软件+商业模式。程序(算... 查看详情

《构建之法(第三版)》第二章

第二章:个人技术和流程书本内容回顾概述一个团队需要一定的流程来管理开发活动,每个工程师在软件生命周期所做的工作也应该有一个流程,在这一章里会介绍PS(PersonalSoftwarePro-cess,个人软件开发流程)。单元测试单元测试... 查看详情

《构建之法(第三版)》第二章

2.1单元测试1.软件的很多错误来源于程序员对模块功能的误解,疏忽或不了解模块的变化。单元的测试可以让自己负责的模块功能定义尽量明确,模块功能的改变不会影响其他模块,而且模块的质量能得到稳定的、量化的保证。2... 查看详情

《构建之法》(第三版)——邹欣读书笔记

坦率的讲,我认为此时读本书的意义和价值不是很大,尤其是在课业繁重的当下。我认为读书应该是从“薄”->“厚”->"薄",此时完成第一步速读已力有不逮,况细读精读乎?如果知识得不到及时巩固和积累,学习的同时没... 查看详情

《构建之法(第三版)》第四章(代码片段)

4.1代码规范代码规范可以分为两个部分:代码风格规范:主要是文字上的规定代码设计规范:牵扯到程序设计,模块之间的关系,设计模式等方方面面的通用原则。4.2代码风格规范代码风格的原则是简明,易读,无二义性Tab键在... 查看详情

速读《构建之法(第三版)》20199319

本周速读了《构建之法(第三版)》,本书共有十七个章节(如下图所示),介绍了软件工程的方方面面,干货满满。在速读完成后我思考了以下几个问题。1、目前流行的几种源程序版本管理软件和项目管理软件各有什么优缺... 查看详情

入坑构建之法

...书。移山之道?emmm,太老了。我经过一番权衡,决定拿构建之法(第三版)这本2017年才再版的书,新书嘛,显得心诚:P然而那个时候,我只知道这是一本讲软件工程的书,以我对之前看过的软件工程的刻板印象以及一些周围 查看详情

《构建之法》第三次

本周着重阅读了《构建之法》的第三章:软件工程师的成长。  软件工程包括了开发、运营、维护软件的过程中的很多技术、做法、习惯和思想。软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”... 查看详情

构建之法第三章读书心得

  在构建之法第三章中,我们主要学习了个人能力的衡量与发展。  初级软件工程师有以下几个成长阶段:1、积累软件开发相关的知识,提升技术技能。                   2、积累问题领域的知识和... 查看详情

20179215《构建之法》第三章

《构建之法》第三章读书笔记?本章为软件工程师的成长,主要介绍了评价软件工程师水平的主要方法,技能的反面,TSP对个人的要求。一、个人能力的衡量与发展?软件开发流程:软件开发流程包括团队的流程,也包括个人的流... 查看详情

《构建之法》第三次随笔

 从《构建之法》前两章的阅读学习中,我了解到了软件工程的概论,知道了“软件=程序+软件工程”,明白了个人技术和流程。阅读了第三章之后,我体会到了软件工程师的成长。 软件工程包括了开发、运营、维护软件... 查看详情

《构建之法》小组第三次

   这周我们小组学习了《构建之法》的第四章,从中知道了很多代码规范的各种原则,这些原则在编程时约束我们,可以使我们的程序更加规范化,可读性更高,便于复审,测试和修改。   代码规范可以分... 查看详情

构建之法第三章

构建之法第三章本章为软件工程师的成长,主要介绍了评价软件工程师水平的主要方法,技能的反面,TSP对个人的要求。软件开发流程:软件开发流程包括团队的流程,也包括个人的流程初级软件工程师有几方面成长:1、积累... 查看详情

《构建之法》第三章学习心得

这周我学习了《构建之法》第三章,讲述了软件工程师的成长。软件系统的绝大部分模块都是由个人开发或维护的。在软件工程的术语中,这些单个的成员叫做Individ-ualContributor(IC)。IC在团队中的流程是怎么样的呢?以开发人... 查看详情

《构建之法》第三章学习笔记

《构建之法》第三章软件工程师的成长个人能力的衡量与发展软件团队和团队中的工程师也是这样。软件系统的绝大部分模块都是由个人开发或维护的。在软件工程的术语中,我们把这些单个的成员叫做Individ-ualContributor(IC)。... 查看详情

《构建之法》第三单元

第二章个人技术和流程 2.1单元测试1、创建断垣测试函数的主要步骤:   (1)设置数据(一个假想的正确的E-mail地址)   (2)使用被测试类型的功能(用E-mail地址来创建一个User类的实体)   ... 查看详情

构建之法:第三次心得

...我主要学习了团队之间的合作的重要性。具体就是学习了构建之法的第四章和第五章。第四章第四章,讲的是两人合作。在软件行业的逐步发展中,一个软件基本上一个人是完成不了的,软件都是在相互合作中完成的。首先,代... 查看详情