zoukankan      html  css  js  c++  java
  • 构建之法阅读笔记02

    这几天读完了构建之法的第二章。

    写在前面:第二章的知识让我学到了要学会单元测试,要抽样代码进行测试从而保证软件的健壮性,还有就是要学会psp表,最近老师也有让写过,总感觉不适应。以前,就是来了一个题目直接开始编程,以后要改掉这个坏习惯。结合本章内容我学到了:

    1、要进行代码的单元测试,避免都编完之后,出了bug不知道在哪。

    2、学习psp,记录自己的编程时间,提高效率!

    2.1 单元测试

    ①重要的单元测试:有效解决程序员对模块功能的误解、疏忽或不了解模块的变化之类的问题,使自己负责的模块功能定义尽量明确,模块的质量得到稳定的、量化的保证。

    ②好的单元测试的标准:

    在最基本的功能/参数上验证程序的正确性

    单元测试必须由最熟悉代码的人(程序的作者来写)

    单元测试过后,机器的状态保持不变

    单元测试要快(一个测试的运行时间是几秒钟,而不是几分钟)

    单元测试应该产生可重复、一致的结果

    独立性——单元测试的运行/通过/失败不依赖于别的测试,可以人为构造数据,以保持单元测试的独立性

    单元测试应该覆盖所有代码路径

    单元测试应该集成到自动测试的框架中

    单元测试必须和产品代码一起保存和维护

    ③单元测试的基础上能够建立关于这一模块的回归测试,目的是:

    (1)验证新的代码的确改正了缺陷

    (2)同时验证新的代码有没有破坏模块的现有功能,有没有Regression

    2.2 效能分析工具

    效能分析方法:抽样和代码注入

    2.3 个人开发流程

    个人开发流程PSP(Personal Software Process)

    特点:(1)不局限于某一种软件技术,而是着眼于软件开发的流程,这样,开发不同应用的软件工程师可以互相比较。

    (2)不依赖于考试,而主要靠工程师自己收集数据,然后分析、提高。

    (3)在小型、初创的团队中,很难找到高质量的项目需求,这意味着给程序员的输入质量不高。在这种情况下,程序员的输出(程序/软件)往往质量也不高,然而这并不能全部由程序员负责。

    (4)PSP依赖于数据(工程师输入数据的时间代价、数据可能遗失或者不准确的风险、可能会出现一些数据不利于工程师本人的情况)

    (5)PSP目的是记录工程师如何实现需求的效率,而不是记录顾客对产品的满意度,工程师有可能很高效地开发出一个顾客不喜欢的软件。

  • 相关阅读:
    事件处理器(eventhandler,或称为事件处理程序)onload
    HTML语言中img标签的alt属性和title属性的作用于区别
    nexus 开机自启动
    idea 上传jar包到nexus
    Spark standalone HA
    spark 性能优化指南
    spark 体验点滴- executor 数量 和task 并行数
    spark 体验点滴-client 与 cluster 部署
    aop concepts
    部署jar到linux ,开机自启动
  • 原文地址:https://www.cnblogs.com/mac-13/p/13023554.html
Copyright © 2011-2022 走看看