在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

向管理层解释重构

  • 2010-08-02
  • 本文字数:726 字

    阅读完需:约 2 分钟

该如何向 CEO 及其他没有技术背景的人们证明重构的价值呢?

在一场主题为“ Refactoring Justification Language ”的讨论中,来自 BigVisible 的敏捷教练 Adam Sroaka 说到“重构是必要的,因为需求不可避免地会发生变化,这样代码也不可避免地要适应这种变化。当遵循良好设计原则的代码发生变化后,他们就不再遵循这些原则了。重构是这样一种技术:一旦代码修改后,我们可以通过重构不断改进代码的设计”。

来自 CollabNet 的 Scrum 认证培训师 Michael James 则关注于重构与测试优先的编程模式。他说,一开始编写的新代码总是有些凌乱,这样他和他的搭档就需要时间清理代码。

XP 创始人之一的 Ron Jeffries 在一篇名为“ Why is Refactoring a Must ”的文章中说到,假如我们无法在为期两周的 Sprint 中交付 Scrum 项目所需的所有必要的基础设施,那么我们就得准备重构了,以此进行改进,否则我们迎来的将是一团乱麻,这会严重阻碍项目团队的进度。他还指出,Scrum 与任何其他的敏捷方法的一个基本假定是需求会发生变化。如果需求发生了变化,那么就需要重构代码以清理留下来的乱摊子。

Michael James 在“Refactoring Justification Language”的讨论中补充到:即便需求不会发生变化,重构也是必不可少的,因为我们一开始所编写的代码肯定不会是完美的

Mark Woyna 建议到,我们应该看看汽车产业:每年,制造商们都会对汽车进行众多细小的更新,但只有很少一部分是最终用户的需求。有时,他们会修改某个零件以提高使用寿命或是降低花费。

此次报道表明:我们甚至都没必要和管理层讨论重构这个话题。重构应该是我们职业道德的一部分。每天早上的第一件事就应该是重命名或是提取方法,这就好像是工作之前的热身一样。

查看英文原文: Explaining Refactoring to Management

2010-08-02 07:592321
用户头像

发布了 88 篇内容, 共 274.2 次阅读, 收获喜欢 9 次。

关注

评论

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

架构师训练营第九周

Melo

【华为云技术分享】DLI跨源|当DLI遇见MongoDB

华为云开发者联盟

数据库 mongodb dlib 数据集 华为云

编程日课•理解学院

顿晓

学习 编程日课 理解学院

实践录丨如何在鲲鹏服务器OpenEuler操作系统中快速部署OpenGauss数据库

华为云开发者联盟

数据库 鲲鹏920 操作系统 服务器 opengauss

秒懂云通信:如何用阿里云语音通知服务(小白指南)

阿里云Edge Plus

语音

架构师技术领导力成长之路

IT民工大叔

领导力 架构师

新技术(区块链)--让游戏行业走的更远

CECBC

区块链技术 防篡改不可逆

week8--课后作业

Geek_165f3d

创业公司技术体系建设-CI/CD

星际行者

CI/CD

Spring系列第2篇:控制反转(IoC)与依赖注入(DI),晦涩难懂么?

老大哥

一条更新sql在mysql中是怎么执行的

简爱W

智能的财务管理系统,来自某科技公司CEO亲手搭建

明道云

面经手册 · 第1篇《认知自己的技术栈盲区》

小傅哥

Java 面试 小傅哥 技术栈

功能扎实的ERP模版已上架应用库(支持免费安装使用)

明道云

Twitter高性能分布式日志系统架构解析

俊俊哥

pulsar bookKeeper 分布式文件存储

骚操作!用 CPU 烤肉,这位程序员做到了!

程序员生活志

程序员 gpu 程序人生

我天!xx.equals(null) 是什么骚操作??

导导

LeetCode题解:189. 旋转数组,pop+unshift一行,JavaScript,详细注释

Lee Chen

大前端 LeetCode

LeetCode002-两数相加-medium

书旅

算法 数据结构与算法

海华大赛第一名团队聊比赛经验和心得:AI在垃圾分类中的应用

华为云开发者联盟

AI 算法 数据分析 垃圾回收机制 华为云

刚坐下,一个面试官居然问了我 30个Spring Boot问题!

只喝纯牛奶

Spring Boot+Redis+拦截器+自定义Annotation实现接口自动幂等

我是苞谷

策略模式解析

南方有乔木兮

区块链+国防安全,科技是核心战斗力

CECBC

新技术 国防安全 科技信息

给技术同学的建议:人人都该懂的埋点知识

易观大数据

埋点 智能运营

JVM系列之:通过一个例子分析JIT的汇编代码

程序那些事

Java JVM JIT 汇编

java高并发系列 - 第11天:线程中断的几种方式

简爱W

(政务上链)新数据孤岛、安全风险等问题待解

CECBC

工作效率 公开透明 新技术

实现扫码登陆的最简单方案与原理

Java小咖秀

Java 解决方案 经验总结

六字说出微服务的本质

看山

架构 微服务 签约计划第二季

腾讯安全领御区块链与张裕集团达成战略合作,打造高端葡萄酒区块链溯源平台

CECBC

产品溯源 无法篡改

向管理层解释重构_研发效能_Mark Levison_InfoQ精选文章