软件公司到底应不应该重写代码库?
极客时间编辑部
讲述:杜力大小:2.37M时长:02:36
差不多在 20 年前,乔尔·斯波尔斯基(Joel Spolsky)在他具有里程碑意义的文章《你永远不该做的事情》中,痛斥 Netscape 重写了他们的代码库。他的结论是功能型应用永远不应该从头开始重写。
对于很多人来说,乔尔的结论成了一种信仰。而本文中,赫伯·考迪尔(Herb Caudill)则认为在某种情况下,从头开始重写很有必要。
他认为,有时遗留的代码库实在太混乱了,无法修复,例如即使是非常简单的变更,都需要级联修改代码的其他部分。并且,最初的技术选型可能会阻碍进行必要的改进。
从各个方面来看,Visual Studio 都是一个重量级产品:安装它最长需要耗时半个小时。它必须支持企业级客户的广泛复杂需求,因此,当微软试图通过增加一些特性来吸引其他平台开发者的时候,并没有将 Visual Studio 做为突破口。另外,制作 Mac 或者 Linux 版本的 Visual Studio 的想法基本上也是难以实现的。
因此,微软选择从头开始开发,并且不考虑向下兼容。
当然,VS Code 其实也算不是完全从头开始,微软已经有了一些重要的技术储备。由于 VS Code 也是一个 Node.js 应用,他们也能够利用丰富的 JavaScript 生态。微软围绕着 VS Code 成功地建立了一个活跃的开源社区,成倍的激发了兼职开发团队的激情。
另外,Gmail 的 Inbox 客户端最初被视为原生 Gmail 的用户体验精简版,设计成专注于用户实际关心的。它在功能上从未对标原版的 Gmail,并引入了诸如邮件集、固定邮件和延迟消息等功能。
Inbox 和 Gmail 都使用相同的后端服务,仅仅是用户界面不同,用户可以随时在二者之间进行切换。不过一段时间之后,Inbox 停止了更新,很明显谷歌不再愿意为其投入资源。紧接着在发布的 4 年之后,谷歌宣布下线 Inbox。
其中,许多 Inbox 特性都已经被移植到了 Gmail 中,包括智能回复、悬停动作、内联附件和图片等。Gmail 提供的多收件箱功能很好的替代了 Inbox 邮件集。
在这个案例中,谷歌围绕着 Inbox 做出的改动,让我们相信我们看到了 Gmail 的未来。但这不是美丽的日落,对于许多用户来说,他们被迫放弃 Inbox 的创新工作流,重新回到了旧产品当中。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论