小编

如今,对机器学习潜力感兴趣的程序员都在谈论,如何利用人工智能和基于人工智能的软件开拓工具构建运用程序。
例如PyTorch和TensorFlow之类的办理方案。

  除此之外,机器学习技能正以另一种有趣的办法影响着编程天下,便是那些采取机器学习算法来简化开拓职员事情的最新软件开拓办理方案。
在本文中,我们将重点先容五个这样的工具。
个中三个已经在面世,而其余两个仍处于测试阶段。
如果您想知道如何利用机器学习来更快更有效地进行软件开拓,可以看看这些办理方案。

  Kite–面向开拓职员的顶级机器学习工具

可自动生成代码5款基于AI的顶级开拓对象

  该工具紧张充当代码完成者。
借助机器学习,它可以轻松地实时检测您正在输入的代码,并在您键入时将其完成。
每每被视为开拓职员的最佳工具之一,它可与许多盛行的代码编辑办理方案合营利用。

  Kite利用从GitHub获取的事情模型。
GitHub代码(所有人都可以利用)用于创建充当Kite模型主干的择要。
这样,该工具可以根据高下文和目的而不但是文本本身,去建议乃至自动完成代码。

  Kite刚发布时只能在Mac和Windows上访问。
本日,它也可以在Linux上利用。
该工具的缺陷是目前仅适用于Python。
但是,它也可以与Go一起利用。

  两年前,开源代码程序员指控Kite处理用户数据不当,并修正了一个盛行的Atom插件来自动完成代码。
不过,Kite团队此后办理了这两个问题。
最近,Kite团队宣告该工具现在可以在用户PC内本地实行所有功能,而不是像以前那样在云中实行。

  Codota

  该工具非常类似于Kite,由于它利用机器学习来天生自动完成代码。
它还利用了由衍生自公开代码的语法树而形成的类型。
但是,它确实与Kite有一些差异。

  Codota是针对Kotlin和Java措辞构建的。
它是基于云的办理方案,可自动天生智能预测。
值得把稳的是,Codota团队表示用户数据未传输到他们的做事器,当须要根据范围和高下文预测代码时,只传输来自编辑文档的有限的加密信息。

  Linux,Windows和Mac设备都支持Codota。
但是,编辑器模式仅适用于Android Studio,Eclipse和IntelliJ,当您查看该工具所支持的措辞时,就可以理解个中的缘故原由了。
除此之外,Codota团队还提到其他编程措辞的版本正在开拓中,估量第一个将发布的版本是JavaScript。

  该工具有一个免费版本,它仅根据可公开访问的代码天生自动建议。
但是,付用度户也可以利用私人代码。

  DeepCode

  DeepCode也是当下比较盛行的用于软件开拓的机器学习工具。
它的紧张功能是检讨代码并突出显示可能随意马虎受到安全漏洞毁坏的部分。
与之前的两个工具非常相似,DeepCode从公共存储位置评估代码以识别相似之处。
比较之下,该工具还利用模式来查找易受攻击的区域。

  DeepCode实现了一种方法,可以在达到临界安全级别之前剖析用户输入处理。
因此,当任何数据在没有安全验证或打消的情形下从一个点移动到另一个点时,该工具会将其标记为受污染的,并向您发出警告。
该工具可以标记的问题包括跨网站脚本、SQL注入威胁、远程代码实行以及路径遍历攻击等。

  您可以在热门的存储库(例如Bitbucket乃至GitHub)上找到利用DeepCode完成的剖析。
这些报告是免费的,可用于开源项目或只需少量开拓职员的私人作品。
您还可以利用DeepCode来剖析您确当地代码托管,但须要付费。

  PROSE

  这个框架由Microsoft创建,可以利用示例天生代码。
PROSE代表“利用示例进行编程”(Program Synthesis using Examples),并且可以利用它来创建其他编程工具,而不是直接将其用作预测办理方案。
开拓职员可以利用PROSE的办法包括通过示例进行文本转换、通过预测进行文件操作以及从文本文件中提取数据。

  Pix2code

  Pix2code仍处于试验阶段,它是一种创新工具,可以将图形用户界面的屏幕截图转换为打算机代码。
通过利用深度学习技能,该软件可以剖析三种不同格式的GUI:iOS,Android和HTML / CSS。
但是,由于该工具仍处于测试阶段,因此只能将其用于学习或用作其他软件开拓的根本。

  利用AI工具进行软件开拓的好处

  如我们所见,这些创新工具可以赞助代码完成、安全方法乃至代码天生。
机器学习供应了巨大的可能性,并且可以快速有效地创建软件,因此上述工具是值得研究的。
当然我们还是得说——如果没有履历丰富的软件开拓职员团队,再好的工具都是无用的。
当涉及到节省开拓韶光时,这些工具是必不可少的,但初始方案过程和测试、QA以及终极的支配过程,仍须要有履历的开拓职员。

  原文作者:Sandra Parker