双重标准,我该怎么解决
今天改了一笔代码,是一个图像输出模块的字符格式处理功能的代码,
这个代码本身是在我们的库里面,
这个图像输出模块一共有2个函数,以及2个成员变量,
分别叫做FunA、FunB、Mb1、Mb2,
Mb1 用来接收外部传进来的一个字符串,
FunA 用来处理Mb1,变成Mb2,
FunB 用来把Mb2 画出来,到指定的位置,
很明显就可以看出来,实际上调用流程就是,
SetMb1,CallFunA,CallFunB,后续每次要画文字的时候,只要文字不变,都调用一次FunB就可以了,
今天,我要修改的是FunA,由于FunA早期版本过于老,
需要收传入的参数太多,并且获取的Mb2并不是我们要的效果,导致FunB画Mb2的结果是不符合我们预期的,
结果,我就把我们库代码修改了,
主要修改位置就是Mb1 的这个函数,
然后就悲剧了,
我老大提出2点理由质疑我的修改,
1:我的代码效率的问题,FunA函数的问题
2:基础库代码不能改,我是否有其他办法解决问题
然后我就非常头痛。
1:至于代码效率问题,其实我已经说得很清楚,
我修改的函数并不是一个频繁调用的函数,
由于我修改的函输只有一个整理数据的功能,
所以我所修改的函数并不会频繁被调用,
实际上频繁被调用的是FunB函数,因为每次展示几乎都要调用,
所以,关心FunA的效率,其实是很奇怪的一个事情,
(有个小插曲是,之前我们的库里面有个更加频繁调用的内存申请函数MemAlloc,内部是包了一个类似于 ExAllocatePoolWithTag 的函数,
但是呢,MemAlloc 函数的作者竟然在这个函数里面加了一个类似于 ZeroMemory 的功能,
我当时就提出来,如此频繁被调用的一个函数,而且是个最基础的功能函数,加上一个不一定用得到的功能,是否真的有必要,但是我老大直接就把我卡了。)
2:至于基础库是否可以改的问题,其实我已经说得更清楚了,
由于我要修改的这个模块是前几天新加的,一个新的模块并不一定会有人来用它,
这个模块就是给我用的,但是它不符合我的要求,我就需要修改,
但是我老大就是说,它是在基础库中的。
哎,我只想好好地写代码。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」