######################################## 代码优化 ######################################## 不要用 bool 形参 **************************************** 整理自 `为什么尽量少用 bool 型的函数参数`_ .. _`为什么尽量少用 bool 型的函数参数`: https://www.bilibili.com/video/BV1Nb4y1q7PN 原因有两个: - bool 形参会导致代码的可读性变差,比如在只看函数调用而不看函数签名的时候很难理解参数的含义。尽管使用 IDE 可以方便地查看函数的签名,但并不是所有场合都能会 IDE 的 - 带有 bool 形参的函数违背的函数的单一职责。函数根据 bool 参数需要负责多个任务,违背了设计模式 优化方式: - 将职责分离,一个函数分离成多个函数即可 - 使用枚举提高语义化 - 使用解释性变量 嵌套 if-else 语句优化 **************************************** 整理自 - `改善丑陋的代码——嵌套 if-else 语句优化`_ - `改善丑陋的代码——并列 if-else 语句优化(表驱动)`_ .. _`改善丑陋的代码——嵌套 if-else 语句优化`: https://www.bilibili.com/video/BV1eP4y157Jp .. _`改善丑陋的代码——并列 if-else 语句优化(表驱动)`: https://www.bilibili.com/video/BV1L44y1v7wv 对于 if-else 很多的嵌套代码块,可以通过以下方式优化: - 互斥条件表驱动 - 嵌套条件校验链 - 短路条件早返回 - 零散条件可组合 而对于并列的 if-else,可以使用以下方式优化: - 字典映射 - 表驱动 多参数函数优化 **************************************** 整理自: `改善丑陋的代码——多参数函数优化(参数封装)`_ .. _`改善丑陋的代码——多参数函数优化(参数封装)`: https://www.bilibili.com/video/BV1344y1Y7yy 方法: - 封装成一个对象