重构——35合并条件表达式(Consolidate Conditional Expression)

简介: 合并条件表达式(Consolidate Conditional Expression):你有一系列条件测试,都得到相同结果;将这些测试合并为一个条件表达式,并将这个条件表达式提炼为一个独立函数

合并条件表达式(Consolidate Conditional Expression)

你有一系列条件测试,都得到相同结果;将这些测试合并为一个条件表达式,并将这个条件表达式提炼为一个独立函数

一、动机

实际上只有一次检查,只不过有多个并列条件需要检查而已,从而使这一次检查的用意更加清晰

二、做法

1、确定这些条件语句都没有副作用

2、使用适当的逻辑操作符,将一系列相关条件合并为一个

3、编译,测试

4、对合并后的条件表达式实施Extract Method

目录
相关文章
|
6月前
|
C#
C#动态查询:巧用Expression组合多条件表达式
在C#中,利用`Expression`类和`AndAlso`、`OrElse`方法,可以组合两个`Expression<Func<T, bool>>`以实现动态多条件查询。该方法通过构建表达式树,方便地构建复杂查询。示例代码展示了如何创建表达式树,分别检查年龄大于等于18和姓名为"John"的条件,并使用`AndAlso`组合这两个条件,最终编译为可执行的委托进行测试。
260 1
|
6月前
|
算法 安全 编译器
【C++ 17 新特性 折叠表达式 fold expressions】理解学习 C++ 17 折叠表达式 的用法
【C++ 17 新特性 折叠表达式 fold expressions】理解学习 C++ 17 折叠表达式 的用法
168 1
|
6月前
|
前端开发
简化 if true...else 条件表达式
简化 if true...else 条件表达式
|
算法
6.解析表达式算法
6.解析表达式算法
109 0
|
Dart Java
Dart条件表达式
Dart中的条件表达式有两种形式,用来替换简单的`if-else`语句。
|
Dart
Dart之条件表达式
Dart之条件表达式
57 0
Dart之条件表达式
|
索引
改善代码设计 —— 简化条件表达式(Simplifying Conditional Expressions)
  系列博客       1. 改善代码设计 —— 优化函数的构成(Composing Methods)       2. 改善代码设计 —— 优化物件之间的特性(Moving Features Between Objects)       3.
938 0
|
索引
改善代码设计 —— 简化“.NET技术”条件表达式(Simplifying Conditional Expressions)
  系列博客       1. 改善代码设计 —— 优化函数的构成(Composing Methods)       2. 改善代码设计 —— 优化物件之间的特性(Moving Features Between Objects)       3.
857 0
|
索引
一起谈.NET技术,改善代码设计 —— 简化条件表达式(Simplifying Conditional Expressions)
  系列博客       1. 改善代码设计 —— 优化函数的构成(Composing Methods)       2. 改善代码设计 —— 优化物件之间的特性(Moving Features Between Objects)       3.
1009 0
重构——34分解条件表达式(Decompose Conditional)
分解条件表达式(Decompose Conditional):你有一个复杂的条件语句;从if,then,else三个段落中分别提炼出独立函数
1519 0