< 返回版块

Mike Tang 发表于 2024-10-13 13:09

使用Copilot并没有显著提高开发效率,反而会导致代码中不小心引入41%更多的错误

一项关于使用GitHub的AI编程助手Copilot对开发人员工作效率的影响的研究。研究由编码管理软件公司Uplevel进行,跟踪了800名开发人员在使用Copilot前后3个月的表现。结果发现,使用Copilot并没有显著提高开发效率,反而会导致代码中不小心引入41%更多的错误。

文章指出,这一发现并不令人惊讶,因为Copilot是基于大型语言模型,而后者往往容易产生虚构信息和不正确的数据。另一项研究也发现,大型语言模型会生成大量"虚构包"的代码,即引用了不存在的文件或代码。

一些科技领导人开始担心,使用AI生成的代码可能会带来更多工作,因为调试这些代码变得更加困难,有时重写代码比修复更容易。

这就是为什么像 Rust 这样的强类型系统仍然很重要,它可以结合单元测试等手段来检查程序的正确性。

https://futurism.com/the-byte/ai-programming-assistants-code-error

TentHash - 一种新的高质量

这个存储库包含了一个名为TentHash的160位非加密哈希函数的规范和实现。TentHash旨在作为一种高质量、合理快速且输出较大的哈希函数,主要应用于数据指纹、内容可寻址系统等无法容忍哈希冲突的场景。它的设计理念是为了在不需要加密安全性的情况下,提供一个与加密哈希相当且更简单高效的实现。该存储库提供了TentHash的设计理念文档、与其他哈希函数的性能比较,以及Rust语言的实现。作者欢迎外界对设计的审计、在其他语言的实现等贡献。该项目采用MIT和Apache 2.0双重许可。

https://github.com/cessen/tenthash

"特征实现委托"

这个帖子讨论了Rust语言中引入某种形式的有限继承或特征实现委托的可能性。作者最初提到使用"继承"这个词可能不太恰当,并提出了"特征实现委托"这个更准确的说法。

作者描述了一个场景:假设有一个非常模块化的库,使用了数百个特征,作者想在现有实现的基础上,只对其中几个特征实现进行小幅修改。为了实现这一目标,作者不得不为新类型实现所有特征,即使大多数特征实现与原有类型完全相同,这导致了大量重复代码。

为了解决这个问题,作者建议引入一种新的语法,允许类型自动将除了显式重写的部分之外的所有特征实现委托给内部类型。他提供了一些伪代码示例,展示了这种语法可能的样子。

总的来说,这个建议旨在减少重复代码,提高代码的可维护性,同时保留Rust语言的安全性和高性能特征。

https://old.reddit.com/r/rust/comments/1g1oczx/i_think_rust_needs_some_sort_of_limited/

--

From 日报小组 Mike

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页