Split Temporary Variable

Split Temporary Variable

    

  

  

  

时间: 2024-10-08 11:13:06

Split Temporary Variable的相关文章

『重构--改善既有代码的设计』读书笔记----Split Temporary Variable

继续开始我们重构手法的系列,今天介绍的是Split Temporary Variable---分解临时变量. 在我们平常写的程序中肯定有某些临时变量被赋予了超过一个的责任.如果他们不是那种收集结果(temp = temp + QString("abc"))或者循环变量(i = i + 1),然而他们却被赋值了多于一次.那么我们肯定说,这个变量被赋予了超过一个的责任,别看这是个小小问题,但这会阻扰我们阅读者的判断,我们会去揣测,这个变量到底是用来干嘛的.从而影响我们看清程序正常的思路.

重构改善既有代码设计--重构手法06:Split Temporary Variable (分解临时变量)

你的程序有某个临时变量被赋值超过一次,它既不是循环变量,也不被用于收集计算结果.针对每次赋值,创造一个独立.对应的临时变量 double temp = 2 * (_height + _width); System.out.println(temp); temp = _height * _width; System.out.println(temp); 重构后: final double perimeter = 2 * (_height + _width); System.out.println(

软件配置管理复习

软件配置管理 第1章    软件配置管理概念与目标 软件配置管理(Software Configuration Management, SCM) (1)    定义(多个): l  软件配置管理是指一套管理软件开发和维护过程中所产生的各种中间软件产品的方法和规则,它是控制软件系统演变的学科. l  软件配置管理是一组针对软件产品的追踪和控制活动,它贯穿于项目生命周期的始终,并代表着软件产品接受各项评审. l  软件配置管理是贯穿于整个软件过程中的保护性活动,它被设计用来:(1) 标识变化:(2)

重构改善既有代码设计--重构手法04:Replace Temp with Query (以查询取代临时变量)

所谓的以查询取代临时变量:就是当你的程序以一个临时变量保存某一个表达式的运算效果.将这个表达式提炼到一个独立函数中.将这个临时变量的所有引用点替换为对新函数的调用.此后,新函数就可以被其他函数调用. 例子如下: double basePrice = _quantity*_itemPrice; if (basePrice > 1000) { return basePrice * 0.95; } else { return basePrice * 0.98; } 重构之后代码: if (BasePr

《重构——改善既有代码的设计》读书笔记

重构--改善既有代码的设计 1 重构概述 1.1 重构的概念(What) Refactoring 名词:对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低修改成本. 动词:使用一系列重构方法,在不改变软件可观察行为的前提下,调整其结构. 1.2 为什么要重构(Why) 改进软件设计 提高代码质量和可读性,使软件系统更易理解和维护 帮助尽早的发现缺陷 提高编程速度 1.3 何时重构(When) 何时重构: 1)随时随地进行. 2)三次法则:第一次做某件事只管去做:

重构改善既有代码设计--重构手法01:Extract Method (提炼函数)

背景: 你有一段代码可以被组织在一起并独立出来.将这段代码放进一个独立函数,并让函数名称解释该函数的用途. void PrintOwing(double amount) { PrintBanner(); //print details Console.WriteLine("name:"+_name); Console.WriteLine("amount:"+_amount); } void PrintOwing(double amount) { PrintBanne

【转】PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数

原文地址: PHP 杂谈<重构-改善既有代码的设计>之一 重新组织你的函数 思维导图 点击下图,可以看大图. 介绍 我把我比较喜欢的和比较关注的地方写下来和大家分享.上次我写了篇<php 跟老大的对话>.还是有很多疑问,这书帮了我不少的忙. 如果你比较繁忙,或者懒得看文字,建议你直接看截图,也会有很大的收获的.你可以通过比较截图中的代码就能知道孰优孰劣了. 代码部分我为什么用图呢?因为我经常用手机看代码,博客园的代码在手机里乱七八糟的,还是看图比较舒服. 专业术语 我们毕竟是用英文

重构手法

重构手法1.0 Extract Method 提炼函数:你有一段代码可以被组织在一起并独立出来.做法:将这段代码放进一个独立函数中,并让函数名称解释该函数的用途.2.0 Inline Method 内联函数:一个函数的本体与名称同样清楚易懂.做法:在函数调用点插入函数本体,然后移除该函数.3.0 Inline Temp 内联临时变量:你有一个临时变量,只被一个简单表达式赋值一次,而它妨碍了其他重构手法.做法:将所有对该变量的引用动作,替换为对它赋值的那个表达式自身.4.0 Replace Tem

《重构—改善既有代码的设计》笔记

为什么要重构 改进软件设计,消除重复代码 保持代码易读.易修改 提高编程速度(良好设计师维持软件开发速度的根本) 发现BUG 什么时候重构 事不过三,三则重构(三次法则) 添加功能时一并重构 修改错误时一并重构 复审代码时一并重构 问题代码 重复的代码 过长函数 过大类 过长参数列表 发散式变化 霰弹式修改 依恋情节 数据泥团 基本型别偏执 switch惊悚现身 冗赘类 夸夸其谈未来性 令人迷惑的暂时值域 过度耦合的消息链 中间转手人 狎昵关系 异曲同工的类 不完美的程序库类 纯稚的数据类 被拒