写点什么

重构之十六字心法(一)

  • 2020-01-16
  • 本文字数:525 字

    阅读完需:约 2 分钟

重构之十六字心法(一)

这篇文章是我写过的所有文章里最难产的一篇,前前后后斟酌酝酿了好几个月。因为重构对于我来讲真的太重要也太深刻了,包含的内容和想说的也太多了。如果说这几年自己觉得在哪些方面的收获最大的话,非重构莫属了。

重构的威力

软件开发的难点在于不确定性,邱大师写过一篇《软件开发为什么很难》就提到


软件的复杂性来自于大量的不确定性,而这个不确定事实上是无法避免的。

需求在变,语言在变,框架在变,工具在变,框架在变,架构在变,趋势在变,甚至连组织结构都在不断的变化。


随着变化的不断产生,软件变得越来越复杂。就像那篇经典的《架构腐化之谜》中提到的一样,我们的软件也会像一个生命体,经历从新生到衰老腐化的过程。


而重构就像是一次手术,通过优化内部结构,减慢腐化衰老,让软件“青春永驻”,可见重构的威力。


重构教会了我如何通过高效安全地改善内部设计以使之适应外部的不确定性和频繁变化。

重构威力无边,就像是武侠小说中的一件插在石头上的上古神器,但同样也不是一般人可以轻松驾驭的。


如果运用不当,造成的损害也会同样巨大。



如何将重构这件神器运用自如,发挥其最大的威力,也是我一直在探寻的,即重构的手法和心法。


本文转载自健荐公众号。


原文链接:https://mp.weixin.qq.com/s/SyKu1m7FVXzB5fInmj44wQ


2020-01-16 11:51946

评论

发布
暂无评论
发现更多内容

React源码分析8-状态更新的优先级机制

flyzz177

React

react源码中的协调与调度

flyzz177

React

react源码中的hooks

flyzz177

React

深入理解 Linux 物理内存分配全链路实现

bin的技术小屋

Linux 操作系统 内核 内存分配

华为云VPN为企业数据上云保驾护航

爱尚科技

校招前端一面经典react面试题(附答案)

beifeng1996

React

手撕常见JS面试题

helloworld1024fd

JavaScript

React源码分析8-状态更新的优先级机制

flyzz177

React

华为云弹性云服务器,助推多行业数字化转型

科技说

华为云虚拟专用网络VPN,如何解决企业出海难题

爱尚科技

拒绝内卷挖掘境外新蓝海,华为云虚拟专用网络VPN有多特别?

爱尚科技

从React源码分析看useEffect

flyzz177

React

同是弹性公网IP,华为云弹性公网IP的优势有哪些?

科技说

前端工程师leetcode算法面试必备-二分搜索算法(下)

js2030code

JavaScript LeetCode

2022前端二面react面试题(边面边更)

beifeng1996

React

大数据时代来临,华为云ECS为企业释放数据生产力

科技说

远程办公小助手——华为云虚拟专用网络VPN

爱尚科技

校招前端二面高频vue面试题

bb_xiaxia1998

Vue

高级前端必会手写面试题及答案

helloworld1024fd

JavaScript

【低成本“上云”】华为云ECS,助力企业数字化转型!

科技说

华为云ECS,最专业的云服务专家

科技说

面试官让你说说react状态管理?

beifeng1996

React

能否手写vue3响应式原理-面试进阶

helloworld1024fd

JavaScript

react源码中的生命周期和事件系统

flyzz177

React

华为云虚拟专用网络VPN,为企业铺就数据上云的安全路

爱尚科技

vue为什么v-for的优先级比v-if的高?

bb_xiaxia1998

Vue

华为云弹性云服务器ECS,助力企业业务持续稳定运行

科技说

前端工程师leetcode算法面试必备-二分搜索算法(中)

js2030code

JavaScript LeetCode

new Vue的时候到底做了什么

bb_xiaxia1998

Vue

高级前端二面手写面试题(边面边更)

helloworld1024fd

JavaScript

5分钟搞懂分布式可观测性

俞凡

架构 微服务 最佳实践 云原生

重构之十六字心法(一)_语言 & 开发_王健_InfoQ精选文章