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