你好,游客 登录 注册 搜索
背景:
阅读新闻

Facebook开源flint:一个用D语言编写的C++静态代码分析器

[日期:2014-02-28] 来源:CSDN  作者: [字体: ]

  近日,Facebook开源了flint——一个用D语言编写的C++静态代码分析器,这比较符合Facebook的一贯风格。Facebook开放flint软件的源代码,不但可以通过用户和程序员的反馈信息对flint进行不断地更新改进,还能提升flint的性能。

  为何不用现有Lint工具?

  Lint程序在程序请求类别当中算是一个比较奇怪的程序请求类别,经过一段时间对Lint的使用,开发者认为Lint程序对构建Facebook架构并没有什么明显的作用。而此时,使用D语言编写的C++静态代码分析器——flint进入了人们的视野,由于其特殊的性能和轻量级的体积而备受关注。

  Flint为何物?

  来介绍一下Facebook的lint程序之一——flint,它主要的功能是自动提示警报信息。例如,在代码审核系统里给出合适的代码修改提示;提醒程序员哪行代码出错了等等。Flint已经成为Facebook程序员工作当中必不可少、尤为重要的好帮手。正因如此才有必要开源flint,原因在于:任何程序员都可以对Facebook程序员所构建的程序进行检测,并提出改进意见。说白了,开源也是对程序员的一项考验,你敢把很烂的代码公布出来吗?

  Flint是用D语言编写完成的,也是Facebook开源的的第一个D语言编写的代码库。事实上,flint的初始版本是用C++编写的,而使用D语言重新编写的Flint版本只是作为实验版本来测试的,但是开发者最后发现,用D语言编写的Flint版本更加轻巧、快速、高效,也更容易分享。

  通过使用flint而带来的好处:

  检查列入黑名单的标记序列。

  检查列入黑名单的标识符。

  检查保留下来的标识符。

  检查可疑的目标选项。

  检查所有开源里的项目。

  通过引用方式,就可以抓住所有的异常信息。

  在已经定义了的架构里消除常见的错误。

  检查正在使用的空间名指令。

  通过数值来检测出错误的字符串。

  制止隐藏起来的强制执行的操作符。

  对于开源flint这件事,开发者当然是比较激动地,这也是“最简单的设计最容易成功”的鲜明写照,除此之外,这也是跨语言之间最有趣的转换。





收藏 推荐 打印 | 录入:elainebo | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款