Re: [讨论] 重构跟kpi的考量

楼主: handsomeLin (DoGLin)   2022-02-26 08:57:52
※ 引述《VScode (VSisBestIDEinTheWorld)》之铭言:
: 假设以下情境
: 有个功能A、B都会用到相同逻辑,且有两份重复的code
: (没有unit test保护,而且年久失修 要加入unit test会需要更多时程)
: 现在要加入C,也会用到相同逻辑
: 身为合格的工程师 应该会把ABC重复的部份提取出来
: 而不是让这逻辑重复三次
: 但以公司营运的角度来看 这次专案就只会测试C的部份
: 不应该动到A、B
: 这时就要冒着A、B坏掉风险重构,或是因为来不及加入unit test
: 就干脆让相同逻辑存在三个地方
: 身为专业工程师,我很想选择重构
: 但过去的经验告诉我
: 绝对要以kpi为最优先考量
: 于是程式充满了注解、重复片段
: 虽然靠着笔记、git log,能还原当时写code的思路
: 但这些脏code就会永远留存在程式里
: 想问大家遇到这情况会怎么做?
感觉这个标题就是个假议题,你说不重构A、B因为Unit test来不及写,那你新写的C就不
用unit test了?
然后你又说三个code一模一样,假设你帮C写完unit test了,那你不就也把AB搞好了吗?
再退一万步来讲,AB没有unit test大家用的那么爽你还硬要去动也只是吃饱太闲,不如
好好写你C的unit test,写完大家就用C就好啦
作者: mmonkeyboyy (great)   2022-02-26 09:11:00
作者: xam (听说)   2022-02-26 10:07:00
他是说ABC其中各有一小块重复的,变abc..
作者: jlhc (H)   2022-02-26 10:44:00
这篇正解... 所谓的专业不是自己想怎么搞就怎么搞...
作者: pttano (pttano)   2022-02-26 11:34:00
评论要不要重构不能只看程式码的逻,原原po应该是菜鸟.......................................逻辑
作者: knives   2022-02-26 14:09:00
菜鸟最喜欢重构了,以为很行
作者: abccbaandy (敏)   2022-02-26 14:41:00
推楼上,一堆没经验的整天在那边重构,搞出一堆问题
作者: lovdkkkk (dk)   2022-02-26 14:44:00
不过就是要这样 才会有经验啊
作者: t64141 (榕树)   2022-02-26 15:01:00
怎么推文说得像是重构像是一种错误行为一样...
作者: sniper2824 (月夜)   2022-02-26 15:24:00
不好说
作者: fadeawaygod (G.H.)   2022-02-26 15:30:00
重构只在有完善测试的情况下才能安全进行,测试越少风险越大,故重构并不是在每个context下都是好的行为
作者: nh60211as   2022-02-26 15:34:00
有些人重构跟乱写没两样
作者: now99 (陈在天)   2022-02-26 17:16:00
现有测试再来重构
作者: wulouise (在线上!=在电脑前)   2022-02-26 21:34:00
重构跟砍掉重练不一样,一次改太多又没测试没bug才奇怪
作者: CaptainH (Cannon)   2022-02-26 22:49:00
Code的价值不在优不优雅 在于有没有带来新利润请问你重构的目的是为了节省记体?为了执行更快?为了未来扩展性?还是为了规模化?不要只为了code不合"优雅"的定义而重构
作者: mmonkeyboyy (great)   2022-02-26 23:54:00
重构有时比砍掉重练难多了= =" debug 不如 deletecode 优不优雅这回事 可以加上注解 最终还是看出来的东西是什么鬼 没利润真的懒 除非是要改架构再说不然光去找人协调就几个月过去了
作者: superpandal   2022-02-28 20:23:00
重构要看你有没有这个决定权以及是谁想要重构 有时候你想要重构上头不准 有时候你不想重构上头想 XD通常上头想的不是上头自己也操刀

Links booklink

Contact Us: admin [ a t ] ucptt.com