《重构》原来我一直都错误理解了重构的含义

查看 64|回复 6
作者:fyxtc   
最近在看 conventional commits ,里面说到了
refactor: 用于重构代码,例如修改代码结构、变量名、函数名等但不修改功能逻辑;
我才发现修改方法内部逻辑是不算重构的,比如一个 a 方法,修改了里面的行为逻辑、数据结构、算法这些都不能算重构。之前我修改内部逻辑提交日志都是写“重构了 a 方法或者 a 模块”,还有 v 友们最典型的“又重构了一坨屎山”,很多情况下应该都是错误的说法,只不过好像大家都习惯了。
挺纠结是按照老习惯还是约定规范了= =
BeiChuanAlex   
feat: 新功能( feature )、新特性
fix: 修复 bug
docs: 文档( documentation ),仅修改了文档,比如 README,LICENSE, CHANGELOG, CONTRIBUTE 等
style: 格式(不影响代码运行的变动,注意不是 css 修改)仅修改了空格、格式缩进、逗号等等,不改变代码逻辑
refactor:代码重构(即不是新增功能,也不是修改 bug 的代码变动)
perf: 优化相关,比如提升性能、体验(在不影响代码内部行为的前提下,对程序性能进行优化)
test: 测试用例的新增、修改,包括单元测试、集成测试等
revert: 回滚到上一个版本
build: 影响项目构建或依赖项修改
ci: 持续集成相关文件修改(构建过程或辅助工具的变动,改变构建流程)
release: 发布新版本
workflow: 工作流相关文件修改
chore: 其他修改(不在上述类型中的修改)例如:增加依赖库、工具等
kneo   
改逻辑,改算法,只要最终代码行为和之前一样,就算重构。
重构屎山,如果产品行为基本不变,当然也算重构。哪怕内部某些函数的行为大改。只要在更高层次来看,产品行为一致就可以。
函数改名这种反而是最低级重构。属于术之末端。说不好听点,如果这就是你学习的结果我觉得你还不如不学。
k9982874   
别那么矫情,如果你是产品经理当我没说
weijancc   
你自己都说重构的定义包含修改代码结构, 下面又说数据结构不算, 我建议你先学学语文.
flyqie   
都是重构,只是层级不一样,别纠结。
内部逻辑也算重构,但是对调用方无感。
duron600   
所以说整天把“重构”挂嘴上的,100 个里面估计就 1 个会重构。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部