你动了别人的代码边界

简介: 前段时间呢,需要和xx公司进行对接。由于手上活比较多没忙不过来,领导就先帮我把接口调试完成了,并写好了相关的demo。然后我根据demo把代码整合进业务系统,并重写了相关代码。后来领导看了我写的代码,发现和他写的的demo不太一样,然后就问我为什么要重写?在一番争论后,领导对我说了句:你到底懂不懂抽象啊,你动了别人的代码边界。

前言

  前段时间呢,需要和xx公司进行对接。由于手上活比较多没忙不过来,领导就先帮我把接口调试完成了,并写好了相关的demo。然后我根据demo把代码整合进业务系统,并重写了相关代码。后来领导看了我写的代码,发现和他写的的demo不太一样,然后就问我为什么要重写?在一番争论后,领导对我说了句:你到底懂不懂抽象啊,你动了别人的代码边界。

事情的经过

领导:诶,你这个代码咋和我写的demo不太一样呢?

:我看demo里面的代码有些地方,当返回错误信息的时候抛出了异常。但是实际情况是不能抛出异常,我就给他改写了。

领导:在使用的时候try catch住处理一下不就好了。

:这个确实可以,但是没必要这样做。多套一层 try catch这样不是多此一举了吗。

领导:不是时间很赶吗,那在原有的基础上加一层 try catch不是更快吗。

:说是这样说,但是重写一下那部分又不耗多少时间,耗时间的是调整业务相关的逻辑代码。

领导:就这个原因吗,还有其他的吗?

:这个只是一部分,还有有些写法看起来太臃肿了,可以用属性拷贝和类转换替换掉。这样代码看起来就比较精简了。

领导:减少了代码行数,就是你认为的精简嘛?

:是的。

:对了还有一个是,这个系统用的框架比较老。不支持枚举映射,所以我把一些参数类型变成String了。

领导:那你可以手动映射呀。

:那我还不如用String接收,在使用的地方再用枚举。

领导:在我看来,你的改代码的理由,在我看来都不是理由。

:为啥?

领导:在我看来你因为看那些写法不爽就把它给改了,可以这样理解吧。

:占一部分原因吧。

领导:那你在用Spring的时候,发现有些代码让你看起来不爽,你会改它嘛?

:不会。

领导:为啥呢?

:因为改不了,没得权限。

领导:想改还是可以改的,去github上把代码拉下来,改了重新打包。

:那这个也太麻烦了。

领导:那我是不是认为你因为麻烦或者说没有权限,所以你才不会改。

:是的

领导:这样说的话,如果我把他弄成一个jar,让你用你是不是就改不了。

:是这样的。

:虽然是重写了,但是跟直接把代码拷贝过来是一样的,并没有增加系统的复杂度。

领导:你到底懂不懂抽象啊,你动了别人的代码边界。

:我咋就不懂抽象了?

领导:这样和你说吧。

领导:原本呢,接口对接那部分是我写的,你只需要负责使用就好了。如果接口发生变更,我可以直接处理,你并不需要关心接口对接的逻辑。

:是这样的。但你的代码并没有写在业务系统里啊。

领导:你直接拷贝过去就好了,这个和提供一个Jar有啥区别,而且代码我都测试过了,可以直接使用。

: 是这样的。

领导:当接口发生改变的时候,我更改完,你直接把代码拷贝过去就好了。

:额。。。。

领导:但是现在你把代码重写了,就没有那一层抽象了,也就只能你自己维护了。

:这个本来就是我维护的呀。

:但是系统的抽象程度还是没变呀。

领导:是,整个系统的抽象程度确实没变都是xx服务。但是我现在和你说的是这个项目的,不是整个系统的。

领导:回到之前那个问题。

:嗯嗯

领导:这样和你说吧。当你在看代码的时候,觉得别人的代码写的可能不够规范,或者说不符合你的规范。因为你觉得不符合规范,这个只是你的主观判定,而不是一个客观的事实。在你看来不符合规范的代码,可能就是别人的规范。最好不要因为这个原因去更改别人的的代码。

:好的

总结

  不要去改变别的代码边界。当你更改了别人的代码,就意味着破坏了别人的代码边界。一旦边界被破坏,那就可能出现无法预估的风险。

结尾

  说的通俗一点就是,不要瞎鸡儿改别人的代码。不管别人写的好不好,只要没bug就行,如果有bug也是别人改。有这个时间早点下班不好吗。

  如果觉得对你有帮助,可以多多评论,多多点赞哦,也可以到我的主页看看,说不定有你喜欢的文章,也可以随手点个关注哦,谢谢。

  我是不一样的科技宅,每天进步一点点,体验不一样的生活。我们下期见!

相关文章
|
5天前
|
云安全 人工智能 算法
以“AI对抗AI”,阿里云验证码进入2.0时代
三层立体防护,用大模型打赢人机攻防战
1339 4
|
2天前
|
存储 弹性计算 应用服务中间件
2026年阿里云服务器新手租用全流程完整步骤教程(最新版)
2026年阿里云服务器新手租用全流程完整步骤教程,阿里云服务器提供自定义租用、一键租用、云市场租用和活动租用四种核心方式,适配不同配置需求、技术能力和预算场景。无论是需要精准配置的专业用户,还是追求快速部署的新手,都能找到合适的租用方案。以下是详细的适用场景和操作流程,助力高效上云。
270 146
|
6天前
|
人工智能 Rust 运维
这个神器让你白嫖ClaudeOpus 4.5,Gemini 3!还能接Claude Code等任意平台
加我进AI讨论学习群,公众号右下角“联系方式”文末有老金的 开源知识库地址·全免费
|
2天前
|
弹性计算 固态存储 大数据
2026年阿里云服务器租用费用_阿里云最新轻量、ECS、GPU云服务器价格表
2026年阿里云服务器租用费用多少钱?小编通过查询全网最新关于阿里云服务器租用价格的资料,整理了今年最新的云服务器租用价格表,包括轻量应用服务器、云服务器ECS和GPU服务器。现在最新阿里云服务器租用费用价格表,轻量2核2G轻量服务器一年68元,折合5.6元1个月,新老用户同享99元一年服务器,2核4G5M服务器ECS优惠价199元一年(企业专享),2核4G4M轻量服务器298元一年,4核8G服务器955元一年,4核16G10M服务器70元1个月、210元3个月,8核32G服务器160元1个月、480元3个月,整理2026阿里云服务器租用费用价格表,包括一年优惠价格、一个月和1小时收费明细表:
225 152
|
5天前
|
机器学习/深度学习 安全 API
MAI-UI 开源:通用 GUI 智能体基座登顶 SOTA!
MAI-UI是通义实验室推出的全尺寸GUI智能体基座模型,原生集成用户交互、MCP工具调用与端云协同能力。支持跨App操作、模糊语义理解与主动提问澄清,通过大规模在线强化学习实现复杂任务自动化,在出行、办公等高频场景中表现卓越,已登顶ScreenSpot-Pro、MobileWorld等多项SOTA评测。
693 4
|
12天前
|
编解码 人工智能 自然语言处理
⚽阿里云百炼通义万相 2.6 视频生成玩法手册
通义万相Wan 2.6是全球首个支持角色扮演的AI视频生成模型,可基于参考视频形象与音色生成多角色合拍、多镜头叙事的15秒长视频,实现声画同步、智能分镜,适用于影视创作、营销展示等场景。
812 14