方法名是对方法体的抽象,是化繁为简的支柱
注意:在添加参数的时候,先考虑是否可以把数据移动到方法所在的类中
目标:查询的方法不要做修改
Replace Parameter with Explicit Methods
现象:一个方法被分成几部分,参数值决定要执行哪个部分;
改进:把这个方法替换成多个方法,每个方法代表原方法的一部分
Replace Parameter with Method Call
现象: 方法的参数来自于对另一个方法的调用结果
改进:考虑直接把调用挪到方法之内
原则:最短路径-接近用户
现象:多个方法的参数列表部分或全部相同
改进:把参数包装成对象
好处:可以把对参数处理的相同逻辑移动到这个对象之内,从而减少代码的重复
原则:内聚
对象的属性值只应该在构造方法里设置,set 方法破坏对象的封装。
方法应尽量私有化
Replace Constructor with Factory Method
把对构造方法的依赖-也就是对具体的类的依赖抽象化,只依赖于一个类。这样对具体的类的创建由这个类提供的方法决定
Replace Error Code with Exception
使用异常机制而不是返回特殊值来表示异常状况。
现象:使用 try/catch 捕捉某种异常后,返回一个值。
问题:如果清楚异常触发的条件,那应该用if语句过滤这种条件。
好处:返回相同的结果,但避免被调用的方法执行。
时间: 2024-10-06 00:54:25