写点什么

向管理层解释重构

  • 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:592313
用户头像

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

关注

评论

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

悟透前端:JavaScript ES6模块的导入导出

devpoint

ES6 export export default

低代码与数字化校园应用案例:2周时间构建50+应用,直呼过瘾!

优秀

低代码 数字化校园

浪潮云洲链接入“星火•链网”,走向工业互联网的星辰大海

云计算

恒源云_Gpushare.com | 三步搞定GPU免费云端训练!

恒源云

人工智能 深度学习 gpu CV nlp

王霸雄图荣华敝屣,谈笑间尽归尘土|基于Python3双队列数据结构搭建股票/外汇交易匹配撮合系统

刘悦的技术博客

数据结构 算法 Python3 匹配 股票系统

百度C++工程师的那些极限优化(内存篇)

百度Geek说

c++ C# 内存访问

什么是产品思维和产品意识?——课程总结

Deborah

借力云原生,预见医学影像“云阅片”和电子胶片的未来 | 精选案例

亚马逊云科技 (Amazon Web Services)

【论文分享】Presto: SQL on Everything(一)

小舰

4月日更

什么情况下要招人?

石云升

团队建设 28天写作 职场经验 管理经验 4月日更

新疆重点人员管控平台搭建,可视化大屏

免费开源增强版 Elasticsearch 分支 OpenSearch 项目上线!现邀您加入开源社区!

亚马逊云科技 (Amazon Web Services)

Redis学习01

Hex

Redis 核心技术与实战

连续三年入围 Gartner 容器竞争格局,阿里云容器服务新布局首次公开

阿里巴巴中间件

在数字化迁徙浪潮中,数据可信、数据共享、数据隐私安全缺一不可!

CECBC

大数据

区块链“进军”文娱产业将碰撞出哪些火花?

CECBC

娱乐

Ask Me Anything #1 我是新晋CNCF TOC张磊,你有什么想问我的?

阿里巴巴云原生

容器 开发者 运维 云原生 k8s

Android Camera开发系列:设置对焦模式模式

小驰笔记

Camera; Android;

websocket简析

风翱

websocket 4月日更

博睿数据携数据链DNA创新理念,闪耀金融科技应用发展研讨会四川站

博睿数据

如何从零开始学Python:(6)如何创建模块并运行?

广之巅

Python 4月日更

图解 Docker 架构

xcbeyond

Docker 容器 4月日更

JVM 读书笔记(二) 垃圾收集

U2647

JVM 4月日更

IPFS云算力挖矿系统开发|Filecoin算力挖矿搭建

薇電13242772558

区块链 存储

重读《重构2》- 搬移函数

顿晓

重构 4月日更

恒源云_Gpushare.com | RTX 3090独家训练实录:MMDetectionV2 + ResNeSt

恒源云

人工智能 深度学习 gpu CV nlp

拒绝假货!LVMH与普拉达、卡地亚联手推出区块链平台AURA

CECBC

头条观察 | 从比特币的角度理解牛市暴跌

CECBC

比特币

面向软件 IT 专业的高校大学生付费学习现状问卷调研

Albert

4月日更

对话亚马逊云科技 WWSO 团队四位大咖,给你讲讲他们的职场故事~

亚马逊云科技 (Amazon Web Services)

Oracle LogMiner 数据迁移实战

yintianwen

Java 数据库 后端 数据迁移 LogMiner

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