首页 > 其他分享 >《构建之法》读后感3

《构建之法》读后感3

时间:2024-02-28 21:55:06浏览次数:21  
标签:读后感 软件开发 每日 开发 构建 测试 过程

TDD(Test Driven Development),即测试驱动开发的基本思想就是在开发功能代码之前,先编写测试代码,然后只编写使测试通过的功能代码,从而以测试来驱动整个开发过程的进行。这有助于编写简洁可用和高质量的代码,有很高的灵活性和健壮性,能快速响应变化,并加速开发过程。

  测试驱动开发的基本过程如下:

  ① 快速新增一个测试

  ② 运行所有的测试(有时候只需要运行一个或一部分),发现新增的测试不能通过

  ③ 做一些小小的改动,尽快地让测试程序可运行,为此可以在程序中使用一些不合情理的方法

  ④ 运行所有的测试,并且全部通过

  ⑤ 重构代码,以消除重复设计,优化设计结构

  简单来说,就是不可运行/可运行/重构——这正是测试驱动开发的口号。

  可想而知,测试驱动开发会极为有效地控制开发中的bug,但是这种先写测试代码的方式可能让开发人员有很大的不适应。学习适应TDD的成本会不会比它带来的收益更高呢?这就有待我们在实践中摸索了。

软件开发是一种集体活动,其中必然面临各成员间的协调、统一问题。银行每天都要对各网点进行清算结账,软件开发也是一样的,必须找到一种方法来衡量每天的工作,保证每天的工作能够有效的持续下去,最终把软件开发的过程变成一种内在的过程。这种方法就称为每日构建或是持续集成。每日构建构建的过程是完全自动化的,通过预先定义好的指令,机器将按照指令顺序执行完所有的构建步骤。它让开发者可以每天进行系统集成,从而减少了开发过程中的集成问题。持续集成可以减少集成阶段"捉虫"消耗的时间,从而最终提高生产力。它使得绝大多数bug在引入的同一天就可以被发现。而且,由于一天之中发生变动的部分并不多,所以可以很快找到出错的位置。对开发人员而言,每日构建带来的好处就是签入即更新。

  每日构建虽然会花费一些额外的时间,但是比起最后除错的成本来说,日构建成本是微不足道的。而且更为关键的是能够引入日构建的制度,开发人员将会在日构建的制度下更加频繁的协作,开发进度一目了然,软件的质量也会更加的稳定。软件开发是一项强调沟通和协作的活动,但是在日常的活动中,常常出现阻碍沟通的情况。日构建每一次的构建将会涉及到团队中的所有成员,因此能促进成员的沟通。

  在每日构建的驱动下,项目的进度将会变得非常的明显。每一天的构建结果将会通过某个渠道发布出来,团队和团队的老板可以看到软件现在的样子,项目的完成情况,出现的问题等等。这些信息构成了软件开发的基本信息。不但可以清晰地描述出项目进度,也为管理人员安排计划提供了基础数据的支持。有了基本的量化数据,软件开发才不是靠拍脑袋出成果的。

  每日构建的最后一个价值是提供了整合性。目前软件开发中并没有一种统一的管理软件,未来似乎也很难做到,因为不同的软件组织差异很大。在开发过程中,一些有价值的实践被加入、集成到每日构建的过程中,在每日构建的推动下,这些优秀实践很容易成为开发过程的一部分。

标签:读后感,软件开发,每日,开发,构建,测试,过程
From: https://www.cnblogs.com/baizhuoran/p/18042012

相关文章

  • 程序是怎样跑起来的第十章、十一章读后感
    第十章,了解到他为我们讲述了通过汇编语言来解析程序结构的方法。首先,我们知道了汇编语言与本地代码是一一对应的,把汇编语言转换为本地代码,就好像数学中三角函数中的度数和值一样。我感觉十章好像前面的汇总,在前面我们也看到函数的调用机制,在这函数的名称是函数的内存地址。这章也......
  • 系统科学方法概论绪论读后感
    相比第一本书程序是怎样跑起来来说,这一本书内容布局更加的清晰,更深层次的认识系统这个名词。通过这本书知道了什么是系统科学,它的基本特征是,以及发展状况。系统科学是以系统为研究对象的学科群。它的研究角度分为三个方面,系统论、信息论、控制论,现在的系统科学已经发展成是一个以......
  • 《架构漫谈》读后感
    今天读了王建民老师推荐的一些资料《架构漫谈(王概凯)收益很大。一共九篇文章,从第一篇到第九篇循序渐进,思路清晰。这九篇文章的题目分别是这样的:“什么是架构”、“认识概念是理解架构的基础”、“如何做好架构之识别问题”、“如何做好架构之架构拆分”、“什么是软件”、“......
  • 《程序是怎样跑起来的》第十一章读后感
    硬件性能设计控制。主要采取双重电路、双重读出和回波校验等方法。双重电路可执行双重计算并比较两个计算结果;双重读出即以两个阅读器分别阅读卡片、磁带,或随机存取媒体上的记录,并比较两个阅读操作的结果;回波校验即将数据送回原输出装置与其原始数据相比较,以校验接收装置所收到的......
  • 架构漫谈前四篇读后感
    第一篇文章这篇文章通过类比的方式,以人类社会分工与合作的演变为例,引出了对架构的思考。作者从最早期每个人独立完成所有生活必需品的生产,到分工合作形成社会架构,进而将这个观点引入到软件领域,讨论了架构的产生动力。在文章中,架构被定义为将整体分解为不同部分,由不同角色完成,并......
  • 《程序是怎样跑起来的》第十二章读后感
    要让计算机能够思考,需要使用深度学习技术。深度学习是一种模拟人类神经网络的机器学习技术,通过训练大量的数据,让计算机能够自动地学习和理解输入的数据,并从中提取有用的特征和模式。深度学习技术可以应用于语音识别、图像识别、自然语言处理等领域,让计算机能够自动地识别和理解人......
  • 读后感 -------构架
    架构是指整体的结构或组织方式,它在各个领域都有着重要的意义。在软件工程领域中,架构是指软件系统的总体设计,包括系统的各个部分之间的关系、组织结构以及对外部环境的接口。一个良好的软件架构能够确保系统具有良好的可维护性、可扩展性、可重用性和性能等特性。那么,什么是架构的......
  • 第九章读后感
    第九章主要介绍了操作系统和应用之间的关系。通过阅读这一章节,我对操作系统的作用和应用程序的运行方式有了新的了解。书中详细介绍了操作系统的概念和作用。操作系统是计算机系统中的核心软件,它负责管理和协调计算机的各种资源,并提供应用程序与硬件之间的接口。书中解释了操作系......
  • 程序是怎样跑起来的第十张读后感
    第十章的内容主要围绕汇编语言来解析程序结构。通过这一章节,我们可以了解到汇编语言与本地代码之间的对应关系,即把汇编语言转换为本地代码的过程。这个过程可以被类比为数学中的三角函数,其中度数和值是一一对应的。此外,这一章节还介绍了函数的调用机制,其中函数的名称实际上对......
  • 架构漫谈读后感
    今天在阅读了王概凯先生的架构漫谈博客之后,激发了我很多对软件架构深刻的思考。这篇博文不仅仅是一个关于软件架构的技术性解读,更像是一次智慧的碰撞和思维的火花,让我对架构设计有了更加深刻的认识。从九个问题出发,让我深刻的了解了软件架构。对软件架构有了深刻的思考。(一)什么......