双重标准,我该怎么解决

今天改了一笔代码,是一个图像输出模块的字符格式处理功能的代码,

这个代码本身是在我们的库里面,

这个图像输出模块一共有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:至于基础库是否可以改的问题,其实我已经说得更清楚了,

由于我要修改的这个模块是前几天新加的,一个新的模块并不一定会有人来用它,

这个模块就是给我用的,但是它不符合我的要求,我就需要修改,

但是我老大就是说,它是在基础库中的。

 

哎,我只想好好地写代码。

posted @   穷到底  阅读(171)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示