为什么用Python更易出现软件缺陷-创新互联
这期内容当中小编将会给大家带来有关为什么用Python更易出现软件缺陷,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
创新互联公司自成立以来,一直致力于为企业提供从网站策划、网站设计、成都做网站、成都网站建设、电子商务、网站推广、网站优化到为企业提供个性化软件开发等基于互联网的全面整合营销服务。公司拥有丰富的网站建设和互联网应用系统开发管理经验、成熟的应用系统解决方案、优秀的网站开发工程师团队及专业的网站设计师团队。经常会有刚入行的程序员试图比较各大编程语言之间的差别,然后选择自己认为较好的编程语言学习。虽然圈子里公认各大编程语言之间没有好坏之分,只有是否合适,但不知广大程序员有没有思考过编程语言对软件质量的影响呢。
近日,研究人员Baishakhi Ray、Daryl Posnett、Premkumar Devanbu、Vladimir Filkov 从GitHub收集了大量数据(728个项目,6300万SLOC,29,000作者,150万提交,17种语言)以回答这个问题:编程语言与软件质量之间的关系是什么呢?
他们发现:
编程语言确实对软件质量有影响,但影响程度一般;
不允许类型混淆的编程语言比允许类型混乱的要更好一些;
在函数式编程语言中,静态类型比动态类型更好;
函数式编程语言比过程式编程语言效果差。
结论:
函数式编程语言编写的软件质量显然不如过程式编程语言,C、C ++、Objective-C、Php和Python与更多数量的缺陷修复相关,而Clojure、Haskell、Ruby和Scala则不太可能导致缺陷修复。而在函数式编程语言中,静态类型语言表现更好。语言类型与软件缺陷之间存在很小但重要的关系,函数式编程语言比过程式语言或脚本语言的缺陷更多。缺陷类型与编程语言密切相关, 一些缺陷类型,如内存错误和并发错误取决于语言原语。对于具体类别而言,编程语言对整体缺陷的影响更大。
上图显示的第一列为编程语言,最后一列为对应的bug修复数,不难看出Python的41.9明显高于Java的35.9,如果Python想取代Java,似乎还欠缺很大火候啊!此外,C语言的182.6实在是多得离谱,可能是因为C语言问世较早,所以经历的摸索期和修复期更长的关系,C++、C#或许与C语言有着相同的原因。
本次实验所选用的语言和项目数据是从公共GitHub数据库GitHub Archive中提取出来的。研究人员从GitHub中选择了前20种编程语言(不含CSS、Shell脚本和Vim脚本,因为它们不被视为通用语言)并添加了Typescript。同时,检索了这些主流编程语言的前50个开源项目!
对于每个项目(共728个),研究人员使用git下载了未合并的提交,包括提交日志、作者日期和作者姓名。根据每个文件添加、删除的行计算代码流失和每个提交修改的文件数,然后从修改的文件扩展中检索与每个提交相关联的语言。对于每个提交,通过从相应项目的第一次提交中减去其提交日期来计算其提交周期,并计算其他项目相关统计信息,包括项目的大提交周期和参与的开发人员总数。研究人员通过搜索错误相关的关键字,确定了对个别项目的错误修复提交,比如“错误”、修复”、“问题”、“不正确”、“故障“、”缺陷”等。
然后,根据其原因和影响将错误分为两个阶段:关键字搜索和监督分类。研究人员使用回归模型记录软件项目相关的缺陷提交数量。
上述就是小编为大家分享的为什么用Python更易出现软件缺陷了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联-成都网站建设公司行业资讯频道。
网页题目:为什么用Python更易出现软件缺陷-创新互联
网站URL:http://pwwzsj.com/article/djiojd.html