写点什么

重构之十六字心法(一)

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

    阅读完需:约 2 分钟

重构之十六字心法(一)

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

重构的威力

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


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

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


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


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


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

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


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



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


本文转载自健荐公众号。


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


2020-01-16 11:511169

评论

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

数据驱动构建企业动态全面预算管理架构

智达方通

数据驱动 全面预算管理

【写作训练营打卡|05】 什么是 Web3?

写作 web3

Azure AI Studio使用体验——企业级AI工厂

Bruce Talk

AI Azure AI Studio Azure AI

简单之道

Tony Bai

golang 设计 Google Rob Pike Go 语言

神经网络大模型的智慧之源

百度开发者中心

人工智能 nlp 大模型

软件测试/人工智能|Python数据可视化神器pyecharts教程(二)

霍格沃兹测试开发学社

11 月 NFT 动态:交易量增长,Blur 地位加强

Footprint Analytics

区块链游戏 NFT

火山引擎边缘计算用硬核助力赛事直播

火山引擎边缘云

边缘计算 直播 边缘云 边缘云原生

5.5V 至 36V 输入 3A 500kHz 降压转换器

芯动大师

.h 头文件 | AI工程化部署

AIWeker

c AI工程化部署

极狐GitLab CI/CD 变量黑魔法之预定义变量

极狐GitLab

DevOps 镜像 CI/CD pipeline

Zookeeper数据存储源码剖析

极客罗杰

Kafka Broker开小差了~

腾讯云混沌演练平台

kafka 混沌工程

写代码还是写标书

escray

技术人写作 21 天技术人写作行动营 21 天

30 | 图的表示:如何存储微博、微信等社交网络中的好友关系

鲁米

聊点写标题那点破事儿

6点无痛早起学习的和尚

写作 21 天技术人写作行动营 标题

app开发

Geek_8da502

基于多维数据库的全面预算软件,实现企业管理数字孪生

智达方通

企业管理 多维数据库 全面预算 全面预算软件

客户案例 | 博睿数据全面保障昆仑银行业务稳定性

博睿数据

浅谈接口自动化测试

QE_LAB

接口自动化测试

C 语言入门:如何编写 Hello World

小万哥

c 编程 程序员 后端 软件开发

人人都能用的AI编程助手 CodeGeeX

凌览

AI 前端 后端 AIGC

软件测试/人工智能|Python数据可视化神器pyecharts教程(一)

霍格沃兹测试开发学社

软件测试/人工智能|Java Edit Plus 安装与配置指南

霍格沃兹测试开发学社

如何写好一份技术方案评审文档

童子龙

技术方案 基础架构

项目经验分享:机器学习在智能风控中的应用

YoLo

AI

Go未来演进:基于共同目标和数据驱动的决策

Tony Bai

golang 编程语言 Go 语言 gopher

软件测试/人工智能|Python数据可视化神器pyecharts教程(三)

霍格沃兹测试开发学社

从React Hooks看React的本质

canonical

前端 低代码 React

世界第一!蚂蚁图计算TuGraph打破LDBC SNB-BI世界纪录

TuGraphAnalytics

文心一言 VS 讯飞星火 VS chatgpt (154)-- 算法导论12.3 1题

福大大架构师每日一题

福大大架构师每日一题

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