...GitHub Copilot 代码可维护性差,偏爱“无脑重写”而非重构复用...
更少的移动意味着更少的重构和复用,加上大幅增长的添加、复制/粘贴代码,这表明:AI编程工具并不鼓励代码复用、在已有代码上进行修改,而是更倾向于“无脑重写”。在此,GitClear也指出,过度新增代码、复制/粘贴对代码的长期可维护性也相当不利。这其实在人类程序员中也是老问题,可能是程序员觉得解决当下...
...Copilot代码可维护性差,偏爱“无脑重写”而非重构复用已有代码
更少的移动意味着更少的重构和复用,加上大幅增长的添加、复制/粘贴代码,这表明:AI编程工具并不鼓励代码复用、在已有代码上进行修改,而是更倾向于“无脑重写”。在此,GitClear也指出,过度新增代码、复制/粘贴对代码的长期可维护性也相当不利。这其实在人类程序员中也是老问题,可能是程序员觉得解决当下问题比思...
你的测试代码太脆弱?可能是因为 DRY 过头了
重命名变量、方法或测试名称,让它们变得更有意义。考虑重构应用程序代码,提供更有意义的名称或拆分职责。此外,在可以删除重复代码之前耐心等待。在弄清楚测试用例提供的信息之前,可以选择让代码重复。如果提取代码或重构出现问题,最好采用内联代码,然后重试。关于性能导致开发人员想要提取重复代码的另一个原因是性能...
从4万行代码降到1.8万,腾讯视频竟然用DDD做架构重构?
某种程度而言,软件工程师仍然是手工业者,软件开发仍然没有银弹,重构仍然是软件在生长过程中不可或缺的调校手段。因此,我们也不用迷信什么银弹,也不必忌讳什么过度设计与设计不足,通过多次重构迭代,让正确的设计逐步显现。4.2一起看的技术债视频一起看,经过几年不断的功能开发,已经堆砌了比较多的模块,而且是...
李彦宏,大动作!
百度在工具重构方面最显而易见的动作便是无代码产品秒哒了。在经济学领域,有个重要名词叫作“通用目的技术”,指可以融入无数领域,为更多发明创造带来推动作用的技术。事实上,人类社会的长期经济增长本质上都是由“通用目的技术”创造的,比如带来第一次工业革命的“蒸汽机”,又或是第三次信息技术革命创造的“互...
全球代码质量骤降,罪魁祸首竟是AI!1.53亿行代码深度分析报告
其中,1.53亿行代码为有意义的变更,被用于本研究(www.e993.com)2024年11月26日。最后,还有一个单独的定义叫做「搅动」(churn),意思是代码被创建、推送到git仓库后,在接下来的两周内被撤销或大幅修改。——也就是咱们最开始分析的那张图,可以将「搅动」理解为,作者一开始编写、提交并推送到公司git仓库的代码有问题,后来发现了。数据...
如何写好代码?一个提升代码可读性的小技巧
逆向还原稍微复杂一点,非常考验程序员的抽象总结能力,即给你一段冗长混沌的流水账过程代码,对其中的控制流进行总结和提取,这种情况一般发生在对一段“散发着陈年香气”的老代码进行重构的时候。但万变不离其宗,依旧是对代码进行整体分析,对动机一致、目的一致的段落进行提取,抽象为控制流节点。将整段冗长的代码总结为...
调查1.53 亿行代码后,发现 AI 让全球的代码质量变差了!
解读代码操作变化的含义2023年最显著的代码操作变化发生在“代码变动率(Churn)”、“移动”和“复制/粘贴”这几个方面。我们在这一节将详细探讨这些变化背后的意义。代码变动率的显著增长所谓的“代码变动率(Churn)”是指代码被推送到仓库后,接着在两周内被撤销、移除或更新的比例。在开发者亲自编写所有代...
短视频软件源码,这样做才能避免致命的冗余设计
代码冗余是指在不同的模块或功能中重复使用相同的代码。短视频平台中的推荐算法、视频处理逻辑等,若没有统一封装和复用,极易产生代码冗余。3、功能冗余功能冗余是指多个功能模块实现了相似的功能,但由于缺乏统一规划,导致系统结构复杂。例如,不同的模块各自实现了视频上传、编辑、分享等功能,没有共享相同的逻辑和资...
获1000万美元捐款,用于代码重构、上云,arXiv「好起来了」
上云、代码重构一起来。对于节奏越来越快的学术研究领域而言,arXiv是非常重要的论文预印版平台。和维基百科一样,它是个非营利性机构。当地时间本周四,康奈尔大学科技校区(CornellTech)宣布了arXiv获得巨额捐款的好消息。作为一个非营利数据库,arXiv是所有人均可以免费访问的,长期以来一直依赖人们的捐赠。