重构——43添加参数(Add Parameter)

简介: 添加参数(Add Parameter):某个函数需要从调用端得到更多信息;为此函数添加一个对象,让该对象带进函数所需信息

添加参数(Add Parameter)

某个函数需要从调用端得到更多信息;为此函数添加一个对象,让该对象带进函数所需信息

一、动机

你必须修改一个函数,而修改后的函数需要一些过去没有的信息,因此你要给函数添加一个参数

二、做法

1、检查函数签名是否被超类或者子类实现,如果是,则需要针对每份实现分别进行下列步骤

2、声明一个新函数,名称与原函数相同,只是加上新添参数。将旧函数代码复制到新函数中

3、编译

4、修改旧函数,令它调用新函数

5、编译,测试

6、找出旧函数所有的引用点,将它们全部修改为对新函数的引用。每次修改后,编译并测试

7、删除旧函数,或者deprecated

8、编译,测试

目录
相关文章
|
6月前
|
Java 数据库连接 mybatis
项目移植到原先mybasis项目里出现BindingException: Invalid bound statement (not found): **selectPage
项目移植到原先mybasis项目里出现BindingException: Invalid bound statement (not found): **selectPage
58 1
|
测试技术 API
避免修改构造函数输入参数引起的 breaking change
避免修改构造函数输入参数引起的 breaking change
error • The parameter ‘name‘ can‘t have a value of ‘null‘ because of its type错误
error • The parameter ‘name‘ can‘t have a value of ‘null‘ because of its type错误
|
人工智能 Java
getParameter方法的用法
getParameter方法的用法
|
机器学习/深度学习 存储 PyTorch
params.data.clone()是什么意思?params是模型的参数
在深度学习中,模型的参数通常是由多个张量组成的。这些张量存储了模型在训练过程中学到的权重和偏置等参数。 params.data 是一个张量,其中包含了模型的参数数据。clone() 是 PyTorch 中的一个方法,它用于创建一个与当前张量具有相同数据但不同内存地址的新张量。 因此,params.data.clone() 的意思是创建一个与 params.data 张量具有相同数据但不同内存地址的新张量。通常,这个方法被用来复制模型参数,以便在优化器中使用。
250 0
重构——44移除参数(Remove Parameter)
移除参数(Remove Parameter):函数本体不再需要某个函数;将该参数去除
1480 0
重构——50引入参数对象(Introduce Parameter Object)
引入参数对象(Introduce Parameter Object):Range模式;某些参数总是很自然的同时出现;以一个对象取代这些参数
1766 0
重构——49以函数取代参数(Replace Parameter with Methods)
以函数取代参数(Replace Parameter with Methods):对象调用某个参数,并将结果作为参数,传递给另一个函数,而接受该参数的函数本身也能够调用前一个函数;让参数接受者去除该项参数,并直接调用前一个参数
1722 0
重构——47以明确函数取代参数(Replace Parameter with Explicit Methods)
以明确函数取代参数(Replace Parameter with Explicit Methods):你有一个函数,其中完全取决于参数值而采取不同的行为;针对该参数的每一个可用值,建立一个独立函数
1862 0