首页 > 其他分享 >《代码大全2》阅读笔记六——代码改善

《代码大全2》阅读笔记六——代码改善

时间:2022-11-29 17:00:30浏览次数:43  
标签:重构 结对 代码 编程 改善 笔记 详查 大全

今天我阅读了《代码大全2》这本书里面的代码改善的部分,学习了如何有效地改善代码.

软件同时拥有外在的和内在的质量特性。

外在体现为:

  • 正确性
  • 可用性
  • 效率
  • 可靠性
  • 完整性
  • 适应性
  • 精确性
  • 健壮性

程序员除了关注外在特性外,更关注内在的质量特性

  • 可维护性
  • 灵活性
  • 可移植性
  • 可重用性
  • 可读性
  • 可测试性
  • 可理解性

以上就是一个软件应该具备的特性,我们想要改善代码,就应该从这几个方面出发。

我们学习改善软件质量的技术,我们需要关心软件开发的过程,明确一个设置目标,找出缺陷并修正缺陷。

协同构建

协同构建是其他质量保证技术的补充

协同构建有利于传授公司文化及编程专业知识

集体所有权适用于所有形式的协同构建

结对编程

结对编程:遵循几个准则:

  • 统一编码规范

  • 不要让结对编程变成旁观

  • 不要强迫在简单的问题上使用结对编程

  • 有规律地对结对人员和分配的工作任务进行轮换

  • 鼓励双方跟上对方的步伐

  • 避免新手组合

  • 指定一个组长

正式检查

正式检查:参与详查流程的角色包括主持人(保证详查以特定的速度进行,保证效率也能发现错误),作者,评论员。流程:计划(作者提交设计代码给主持人),概述(评论员不熟悉项目,需要作者进行概述),准备(对设计代码进行详查),会议(主持人挑人员除作者外阐述设计代码的业务逻辑),报告(主持人准备缺陷报告),返工,跟进;

开发者测试

单元(Unit);组件(Component);集成(Integration);回归(Regression);系统(System)

重构

重构策略:

  • 在增加子程序、类时进行重构

  • 在修补缺陷时进行重构

  • 关注容易出错的模块

  • 关注高度复杂的模块

  • 如果在维护一个系统,改善你手中正在处理的代码。确保代码在离开你的时候比来之前更健康。

  • 定义清楚干净代码和拙劣代码之间的边界,然后尝试把代码移过这条边界。

标签:重构,结对,代码,编程,改善,笔记,详查,大全
From: https://www.cnblogs.com/jiacheng-712/p/16935883.html

相关文章

  • 用于拖拽放置的前端代码
    用于拖拽放置的前端代码<!DOCTYPEhtml><html><head><metacharset="utf-8"> <metaname="viewport"content="width=device-width,initial-scale=1,maximum-sca......
  • visual studio 2017 使用码云gitee进行源代码管理
    在码云新建项目  复制项目地址  visualstudio 操作  新建项目 提交到码云 https://blog.csdn.net/sekone/article/details/82619934?ops_req......
  • 《代码大全》阅读笔记五——文章摘录
    在上篇博客中,我解释了自己长时间忘写博客的原因。今天我翻开了长时间没有打开的《代码大全2》,开始阅读起来,在这次阅读过程中,我发现了许多值得摘录的句子,于是我打算做一期文......
  • 助推专精特新企业数字化的低代码
    近两年,“专精特新”成为行业的热门词。根据工信部的定义,“专精特新”中小企业,是指具有专业化、精细化、特色化、新颖化等特点的企业。它们多专注于产业链上某个环节,主营业......
  • JavaScript笔记
    JavaScript合集学完HTML5+CSS3的小伙伴,学习JS时,要多敲多练多想多拓展刚开始入门JS的时候,我们不需要纠结那么多,有些需要先记住,后面会慢慢明白为什么是这样的JS基础部分......
  • React 学习笔记之三 - 基于 Redux 状态管理
    组件嵌套多层时,可能需要把父级的状态一层一层向下传递,这样在管理和使用上极其不便。Redux是JS的状态容器,提供可预测化的状态管理。在React中使用Redux,可以把所有的......
  • python一键去PDF水印,只需十行代码,超级简单...
    弟弟最近要考试,临时抱佛脚在网上找了一堆学习资料复习,这不刚就来找我了,说PDF上有水印,影响阅读效果,到时候考不好就怪资料不行,气的我差点当场想把他揍一顿!算了,弟弟长......
  • Luke的在线笔记
    --WorkingTable备份INSERTINTOFIN.PP_AnM_ActivityExpenseTypeSnapshot(FInDataSnapshotId,Year,BudgetOwnerId,BrandId,ActivityId,ExpenseTypeId,Q1Value,Q2Value,Q3V......
  • 拓端tecdat|R语言代码编写对回归模型进行协方差分析
    目录 ​​怎么做测试​​​​协方差分析​​​​拟合线的简单图解​​​​模型的p值和R平方​​​​检查模型的假设​​​​具有三类和II型平方和的协方差示例分析​​​......
  • Kafka基本概念大全
    下面给出Kafka一些重要概念,让大家对Kafka有个整体的认识和感知,后面还会详细的解析每一个概念的作用以及更深入的原理•Producer:消息生产者,向KafkaBroker发消息的......