重构——34分解条件表达式(Decompose Conditional)

简介: 分解条件表达式(Decompose Conditional):你有一个复杂的条件语句;从if,then,else三个段落中分别提炼出独立函数

分解条件表达式(Decompose Conditional)

你有一个复杂的条件语句;从if,then,else三个段落中分别提炼出独立函数

一、动机

1、提高代码可读性

2、突出条件逻辑,更清楚的表明每个分支的作用,并且突出每个分支的原因

二、做法

1、将if段落提炼出来,构成一个独立的函数

2、将then段落和else段落都提炼出来,各自构成一个独立函数,如果发现嵌套的条件逻辑,我通常会先观察是否可以使用Replace Nested Conditional with Guard Clause。如果不行,才开始分解其中的每个条件

目录
相关文章
|
8月前
|
编译器 C语言
关系/条件/逻辑~操作符
关系/条件/逻辑~操作符
|
6月前
|
开发者
条件判断的模式问题之在契约式编程中,先验条件和后验条件分别代表什么
条件判断的模式问题之在契约式编程中,先验条件和后验条件分别代表什么
|
4月前
|
Java
巧用枚举消除条件判断
`shigen`是一位致力于撰写博客文章的作者,记录个人成长历程,分享真知灼见,并捕捉生活中的感动瞬间。在其最新文章中,通过枚举的方式展示了如何优雅地消除if-else判断,提供了一种更为简洁清晰的代码实现方案。利用自定义的`QuestionHandlerEnum`枚举类,实现了不同情况下的逻辑处理,展示了此方法在提升代码可读性和内聚性上的优势。与`shigen`一同探索编程之美,让每一天都有所进步。个人IP:shigen。
18 0
巧用枚举消除条件判断
|
7月前
|
C语言 C++ 容器
c++primer plus 6 读书笔记 第五章 循环和关系表达式
c++primer plus 6 读书笔记 第五章 循环和关系表达式
|
8月前
|
C#
C#动态查询:巧用Expression组合多条件表达式
在C#中,利用`Expression`类和`AndAlso`、`OrElse`方法,可以组合两个`Expression<Func<T, bool>>`以实现动态多条件查询。该方法通过构建表达式树,方便地构建复杂查询。示例代码展示了如何创建表达式树,分别检查年龄大于等于18和姓名为"John"的条件,并使用`AndAlso`组合这两个条件,最终编译为可执行的委托进行测试。
358 1
|
8月前
|
Java
基本概念【算术、 关系、逻辑、位、字符串、条件、优先级等运算符】(三)-全面详解(学习总结---从入门到深化)
基本概念【算术、 关系、逻辑、位、字符串、条件、优先级等运算符】(三)-全面详解(学习总结---从入门到深化)
79 0
|
8月前
函数依赖,闭包,覆盖,最小化基本集,部分函数依赖与完全函数依赖,传递函数依赖,候选键,外来建,逻辑蕴含
函数依赖,闭包,覆盖,最小化基本集,部分函数依赖与完全函数依赖,传递函数依赖,候选键,外来建,逻辑蕴含
93 0
|
存储 C语言 索引
【C】操作符归纳+表达式运算原理
【C】操作符归纳+表达式运算原理
243 0
【C】操作符归纳+表达式运算原理
表达式树练习实践:C# 五类类运算符的表达式树表达
表达式树练习实践:C# 五类类运算符的表达式树表达
134 0
|
索引
改善代码设计 —— 简化条件表达式(Simplifying Conditional Expressions)
  系列博客       1. 改善代码设计 —— 优化函数的构成(Composing Methods)       2. 改善代码设计 —— 优化物件之间的特性(Moving Features Between Objects)       3.
951 0