首页 > 其他分享 >6、第一组重构

6、第一组重构

时间:2023-08-18 14:45:29浏览次数:38  
标签:重构 函数 第一组 提炼 子函数 内联 变量

6.1、提炼函数

  子函数的提炼

6.2、内联函数

  提炼函数的反向重构:子函数方法体合并:

6.3、提炼变量

  与内联变量其实都可以合并到一个问题的讨论:变量开辟的必要性

6.4、内联变量

  提炼变量的反向重构

6.5、改变函数声明

  改变函数的重命名

6.6、函数组合成类

  如果一组函数总是形影不离的操作一块数据,一般而言,我们都是采用传参的形式进行传递,但这样一来,后期参数列表不免会过长;基于此,我们可以考虑模块化,模块是优秀的软件设计的核心所在

我们把数据和函数封装成一个类,为他们提供一个共同的上下文环境,从而简化了函数的调用

6.7、函数组合成变换

  这个重构手法最初看的时候并不是很懂

标签:重构,函数,第一组,提炼,子函数,内联,变量
From: https://www.cnblogs.com/shixiaogu/p/17640448.html

相关文章

  • 变分模态分解|Matlab逐次变分模态分解SVMD数据重构
    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......
  • 用 GPT-4 给开源项目 GoPool 重构测试代码 - 每天5分钟玩转 GPT 编程系列(8)
    目录1.好险,差点被喷2.重构测试代码2.1引入Ginkgo测试框架2.2尝试改造旧的测试用例2.3重构功能测试代码3.总结1.好险,差点被喷早几天发了一篇文章:《仅三天,我用GPT-4生成了性能全网第一的GolangWorkerPool,轻松打败GitHub万星项目》,这标题是挺容易被怼,哇咔咔;不过最......
  • 搭建产品帮助中心,帮助中心重构之路,易于理解和维护!
    帮助中心,顾名思义,就是获取帮助的地方。我行的每一个产品都有其帮助中心。客户在使用我行产品的过程中,遇到任何问题,都可以在帮助中心中寻求帮助。作为产品管理和开发者,可以通过HelpLook可以灵活设置多个使用教程、操作说明、问题解答等文章,快速搭建帮助平台,满足用户使用需求。今天就......
  • 写测试用例、重构函数、生成SQL查询……原来CodeGeeX还能做这些!
    CodeGeeX中的智能问答功能“AskCodeGeeX”可以帮助程序员解答开发过程中遇到的问题。但是“AskCodeGeeX”的能力不止于此,用它还能帮助程序员高效编写测试用例,添加代码调试信息,实现SQL语句等等。如果你还不知道如何实现,下面我们一起来看几个例子,看看程序员拥有一个超级编程助手,......
  • Kruskal 重构树
    Kruskal重构树1.概念在进行Kruskal算法求解最小生成树时,添加若干虚点,使求得的树成为二叉树,二叉树的叶子节点为原图中存在的节点,且每个虚点都有一个权值,为左子树中的点到右子树中的点的简单路径的最大边权。2.实现方法仍然按照Kruskal算法按照边权从小到大加入边:1.新建n个集......
  • 【博客重构之路】webman-admin安装指南
    原文地址【博客重构之路】webman-admin安装指南视频地址【bilibili】webman是什么webman是一款基于workerman开发的高性能HTTP服务框架。webman用于替代传统的php-fpm架构,提供超高性能可扩展的HTTP服务。你可以用webman开发网站,也可以开发HTTP接口或者微服务。除此之外,webma......
  • 高质量代码究竟依赖设计还是重构而来?
    点击链接了解详情导读一个有所追求的程序员一定都希望自己能够写出高质量的代码,但高质量代码从何而来呢?有人认为是设计出来的,就像一栋稳固的大厦,如果没有前期优秀的设计那么肯定难逃豆腐渣工程的命运;也有人认为是重构出来的,软件的一个基本特性就是易变,随着时间的推移软件会不......
  • 重构之Divergent Change(发散式变化)&Shotgun Surgery (散弹式修改)
    5.DivergentChange发散式变化描述:一个类被锚定了多个变化,当这些变化中的任意一个发生时,就必须对类进行修改。解释:一个类最好只因一种变化而被修改操作:你应该找出某特定原因而造成的所有变化,然后运用ExtractClass将它们提炼到另一个类中。6.ShotgunSurgery散弹式修改描述:一种变化......
  • VUE3、ElementPlus 重构若依vue2 表单构建功能
    Vue3+ElementPlus+Vite重构若依Vue2表单构建功能若依官方的Vue3版本发布已经有段时间了,就是这个表单构建功能一直没有安排计划去适配到Vue3!前段时间公司需要做个类似的功能,就直接借鉴若依Vue2的来直接改了吐槽下:vuedraggable-vue3坑真多,官方文档一言难尽,现在不推荐使......
  • mysql 简单进阶 ———— 重构查询[二]
    前言简单整理一下重构查询。正文为什么我们需要重构查询,原因也很简单,那就是查询慢。为什么会查询慢?查询性能慢底下的最基本的原因是访问的数据太多。某些查询不可避免地需要筛选大量的数据,但这并不常见。大部分性能低下的查询都可以通过减少访问的数据流的方式进行优化。......