首页 > 其他分享 >第六章 重新组织函数

第六章 重新组织函数

时间:2023-04-24 11:46:15浏览次数:26  
标签:函数 代码 提炼 命名 重新 第六章 内联 间接

6.1 提炼函数

  •  一个过长的函数或者一段,需要注释才能理解用途的代码,将这段代码放入一个独立的函数。
  • 每个函数的粒度很小,复用的机会就会很大。高层函数可读性就很高,看起来就是再读一堆注释。函数都是细粒度,复写也会更容易。
  • 提炼出的函数,根据这个函数的意图来命名(以它做什么命名,而不是怎么做命名)
  • 将被提炼代码段中需要读取的局部变量,当作参数传给目标函数

6.2 内联函数

  • 如果一个函数其内部代码和函数名称同样清晰易读,应该去掉这个函数,直接是用其中的代码。非必要的间接性总是让人不舒服
  • 如果有一群不甚合理的函数,可以先放到(内联)一个大的函数里,再从中提炼组织合理的小型函数
  • 间接层有其价值,但不是所有间接层都有价值,用内联函数去除无用的间接层
  1. 检查函数,确定它不具多态性

 

标签:函数,代码,提炼,命名,重新,第六章,内联,间接
From: https://www.cnblogs.com/liu-xin-yu/p/17318355.html

相关文章

  • 构造函数私有化或保护化
    构造函数私有化或保护化摘自:https://blog.csdn.net/caoyangxiaoyao/article/details/81184786构造函数私有化/保护化可以将构造函数设置为私有函数,但是这样做就无法从外部直接调用构造函数,因此就无法直接构造这个类的对象。1.如果你不想让外面的用户直接构造一个类(类A)的对象,而是......
  • 13、c++使用单例模式实现命名空间函数
    本案例实现一个test命名空间,此命名空间内有两个函数,分别为getName()和getNameSpace();声明命名空间及函数namespacetest{conststd::string&getName()和();conststd::string&getNameSpace();}命名空间内实现单例类实现一个单例类,构造函数要为private,自身对......
  • 箭头函数
    箭头函数提供了一种更加简洁的函数书写方式。基本语法是:参数=>函数体箭头函数多用于匿名函数的定义//传统方式定义函数varf1=function(a){returna}//console.log(f1(3))//es6使用箭头函数定义//参数=>函数体varf2=a=>a//console.log(f2(4)) 使......
  • 05 第一个c函数
    hal_start函数:执行板级初始化,初始化hal层:就是硬件抽象层,分离硬件特性,向上提供接口,让内核不在关注硬件相关的细节,也能方便以后的移植和扩展;Cosmos是x86平台下的,其他平台替换hal层即可;init_hal函数,初始化平台、初始化内存、初始化中断;初始化平台:init_halplatform两个任务:......
  • m基于simulink和S函数实现SVPWM永磁同步电机双PI转矩脉动控制系统仿真
    1.算法仿真效果matlab2022a仿真结果如下:     2.算法涉及理论知识概要        永磁同步电机(PMSM)基本结构为定子、转子和端盖。其中转子磁路结构是永磁同步电机(PMSM)与其它电机最主要的区别,其在很大程度上决定了永磁同步电机(PMSM)的实际性能指标[12,13,14]......
  • MKL稀疏矩阵运算示例及函数封装
    IntelMKL库提供了大量优化程度高、效率快的稀疏矩阵算法,使用MKL库的将大型矩阵进行稀疏表示后,利用稀疏矩阵运算可大量节省计算时间和空间,但由于MKL中的原生API接口繁杂,因此将常用函数封装,便于后续使用,最后在实际例子中调用接口执行想要的矩阵运算。0稀疏矩阵稀疏矩阵是指矩阵......
  • 函数过程调用
    这一章中先以如下代码来讨论一下函数调用的大致过程:  解释:首先明确一点:在函数执行的过程中,变量,参数,地址等都是放到栈中:而且需要注意的是:栈的栈底是在高地址,每一次入栈,栈指针寄存器ESP都会-= Call指令会将Call指令的......
  • MKL普通矩阵运算示例及函数封装
    本示例将介绍MKL中的矩阵乘法和求逆,使用MKL进行此类大型矩阵运算可大量节省计算时间和空间,但由于MKL中的原生API接口繁杂,因此将常用函数封装,便于后续使用,最后在实际例子中调用接口执行想要的矩阵运算。1MKL矩阵乘法案例所用示例如下,矩阵A、B分别为\[A={\left[{\begin{array......
  • 【转载】PHP 箭头函数( Lambda表达式 )
    参考箭头函数(php官方中文文档)Laravel10集合--learnku环境软件/系统版本说明windows10php8.2.5-nts-Win32-vs16-x64箭头函数要求>=7.4.0备注如果需要详细了解,请点击本文参考内的官网链接,本文只是简单记录浏览learnku中文Laravel文档的时候......
  • MySQL常用函数
    mysql是一个常用的关系型数据库管理系统,提供了许多有用的函数来帮助处理数据。下面是一些mysql中常用的函数:字符串函数concat():将两个或多个字符串连接起来。length():返回指定字符串的字符数。substr():返回指定字符串的子串。lower():将指定字符串转换为小写形式。......