易本地工作室|10000元接了个某软件二次开发的任务

客户有源码 , 需要修复一些已知BUG和升级一些功能 。
搞这行的都知道 , 很多时候宁愿自己重写 , 也不愿拿别人代码二开 , 因为别人的架构不熟悉 , 尤其是这些个人开发者开发的工具 , 没有注释也就算了 , 竟然变量名都用a,b,c , 其实一开始我并不打算接的 , 所以报价15000 , 让客户知难而退 。
易本地工作室|10000元接了个某软件二次开发的任务
文章图片
谈判
但因为是老客户的原因 , 最后10000答应了他给他升级 。
【易本地工作室|10000元接了个某软件二次开发的任务】因为功能要求并不算太复杂 , 只是原有软件有点庞大 , 需要先了解原有软件的整个架构 。 客户的基本要求是程序自动同步本地文件到阿里云OSS , 并且保证实时性 , 准确率 , 所以要有失败重试 , 失败日志 , 文件检测等功能 。
易本地工作室|10000元接了个某软件二次开发的任务
文章图片
客户部分需求
收定金后就开始研究源码 , 对于这种不是自己写的 , 大部分代码又没有注释的程序 , 阅读源代码比写代码更耗时 。 贴出部分代码让你们看看 , 这代码有多神奇
易本地工作室|10000元接了个某软件二次开发的任务
文章图片
神奇的变量名
看到这些变量名后 , 我顿时就后悔只收了1W块 , 感觉付出与回报不成正比 , 但毕竟答应客户了 , 只能硬着头皮研究了 。 哪知道 , 不仅这种没有注释的变量名神奇 , 连IF语句也神奇 。
不知道大家开发程序的时候喜不喜欢用inta=((b>c)?1:2)这种写法,反正我是不喜欢 , 但这个程序里的代码竟然用这种写法给变量赋值 , 关键是还用嵌套的 , 类似这样:inta=((b>c)?1:(c>d)?2:(c>e)?3)原来的代码比这个神奇多了 。 真是服了 , 最后为了便于自己调试和理解 , 我把这种算法改成了if...else...去操作 , 这样自己看起来就能看明白了 。
易本地工作室|10000元接了个某软件二次开发的任务
文章图片
部分功能配置
经过4天的研究源码和升级 , 今天已经把升级好的程序给客户测试去了 , 等客户最后反馈 。
不知道大家对于程序二开有没有好的办法提高效率呢?