推荐:使用 NSDT场景编辑器 助你快速搭建3D应用场景

 

5 种 可帮助开发人员提高工作效率的AI 工具

 

如果没有完整的团队,学习新功能或修复旧问题可能会占用不成比例的时间——可能是数小时的搜索、阅读文档和观看教学视频。幸运的是,人工智能的进步大大加快了这一过程。

每个人都立即想到的 AI 巨头是 ChatGPT,它不知何故自 2022 年 <> 月以来才可用。可能感觉它已经很久了,因为人工智能极大地改变了谦虚的开发人员的日常生活。

然而,ChatGPT是相当通用的。人工智能真正闪耀的地方在于为解决开发世界中的特定问题而存在的专用工具。

有很多工具符合此描述,但让我们继续看一下其中的五个工具,并了解它们的用途。跳跃前进:

  1. Phind
  2. bloop.ai
  3. Codeium
  4. ColPat
  5. RegExGPT

在本文末尾,您可以查看总结所有五个 AI 开发工具用例的表格,以更好地了解每个工具如何适应您的工作流程。

如果您打算为开发人员利用这些或任何其他 AI 工具,请务必通读我的小警告,以了解一些要记住的注意事项。否则,让我们开始吧!

Phind

Phind Ai开发人员搜索引擎主页

从我们的列表中开始的是Phind,这是一个承诺成为搜索引擎的工具,但为开发人员量身定制。虽然像ChatGPT这样更通用的工具几乎可以解决任何问题,但Phind是专门为开发人员量身定制的。

有趣的是,“搜索引擎”的这个位置意味着Phind的回应通常由两部分组成:

  • 对您的特定问题进行非常详细和有见地的回答
  • 通过搜索检索到的相关链接

通常,您会在询问 AI 问题和浏览搜索结果之间来回切换,以拨入您想要的内容。

使用AI解决编程问题的一件更烦人的事情是,当AI模型不太确定答案时,它可能会开始虚张声势。因此,它可能会给你看似合理的答案,但根本不起作用。

这是令人沮丧的,因为你可以在应该工作的事情上投入大量时间,只是在一段时间后发现人工智能基本上已经把你引入歧途。对于您的生产力来说,可能没有什么比追逐那些一开始就行不通的东西更糟糕的了。

让我们以Phind为例,询问它如何使用Rust连接到Windows上的蓝牙低功耗(BLE)设备。这是一个有趣的问题,因为, 虽然蓝牙无处不在, 找到有关如何搜索和连接到BLE设备的示例非常困难.

在 Phind 中使用“在 Windows in Rust 中查找并连接到 BLE 设备”作为输入会导致以下结果:

Phind 输入要求在 Rust 中的 Windows 上查找并连接到 ble 设备,左侧是代码示例,右侧是搜索结果

在左侧,我们得到一个使用该包的Codeium示例,这是用于此包的正确包。btleplug

在右侧,我们还获得了搜索结果,因此我们可以快速跳转到板条箱的货物页面。这意味着我们可以在有关如何使用Codeium的示例和文档本身之间快速跳转。btleplug

相比之下,向ChatGPT询问相同的问题告诉我们使用比Windows更旧且不支持Windows的crate。所以Phind在这种情况下肯定产生了更好的结果。rumblebtleplug

截至 2023 年 <> 月,Phind 是免费的,没有订阅选项,这是一个很好的奖励。

总之,以下是Phind的与众不同之处:

  • 非常适合编码问题
  • 搜索结果显示在生成的答案旁边 — 很好的附加上下文
  • 似乎给出了比 ChatGPT 更好的编码答案
  • 自由

bloop.ai

在不同的时候,我有理由将各种 GitHub 存储库克隆到我的计算机上。通常,我这样做是为了尝试修复某个错误或了解给定的存储库如何解决某个问题。

每当我这样做时,总会在开始时有一个时期,我必须了解存储库的结构以及在哪里可以找到我正在寻找的代码。这种“入职”可能需要几分钟到几小时的时间。

bloop.ai 希望加快这一进程。您可以克隆整个 GitHub 项目,然后询问有关存储库 bloop.ai 问题。在这种情况下,我克隆了存储库,并询问了BLE扫描如何适用于Windows设备:btleplug

Bloop AI 工具回答开发人员关于 Btleplug 存储库的问题

这实际上是一个相当困难的问题。有问题的库支持四个不同的平台,因此 bloop.ai 必须找到特定于Windows的代码。

此外,由于代码是在接口后面抽象的——为了规范化 API 表面,无论你在哪个平台上——bloop.ai 还必须找到实际的平台实现。btleplug

bloop.ai 对个人也是免费的。要使用它,您必须:

  • 下载应用程序
  • 安装它
  • 登记
  • 将其与您的 GitHub 帐户连接

完成此操作后,您可以根据自己的喜好克隆和检查存储库。

bloop.ai 真正帮助提高生产力的另一种方式是在开发人员离开组织的背景下。

我继承了代码库,这些代码库是其他开发人员专业知识的产物,要理解应用程序如何组合在一起并不容易。能够将存储库加载到 AI 辅助工具中,然后用问题敲打它肯定会消除大量的试验和错误。

最后,桌面应用程序看起来很棒。高度的抛光使该应用程序使用起来很愉快。

以下是使 bloop.ai 对开发人员而言出色的原因的摘要:

  • 了解现有代码库,而不会浪费几天时间
  • 内联聊天使您可以轻松地在您需要的地方获得答案
  • 该应用程序非常漂亮

Codeium

您可能听说过其他AI辅助编程工具,例如GitHub Copilot。Codeium 的工作方式与此非常相似,在您编写代码时在代码库中提供上下文建议。这令人印象深刻。

例如,如果你在 Rust 中编写一个函数,比如 ,Codeium 插件会建议一个函数来做到这一点:calculate_fibonacci_sequence()

Codeium 插件建议开发人员编写代码时的功能

在上面的例子中,我只是写了函数名,Codium 提出了一个可以满足这个需求的函数。虽然 ChatGPT 甚至 Phind 可能需要几分钟来建议答案,但 Codeium 只花了几秒钟就推出了一个可以在大部分时间工作的功能。

Codeium 的建议并不总是完美的,但它通常比自己从头开始编写整个函数更快。

这对您的生产力非常有用,因为您不必搜索如何实现给定的功能。有时,只需为您的函数指定您希望它执行的操作的名称就足以让 Codeium 填写其余部分。

Codeium真正闪耀的地方在于编辑器支持。虽然 VS Code 是当今许多 Rust 开发人员的事实标准,但我很高兴地发现 CLion 和许多其他 JetBrains IDE 的原生支持。支持的编辑器列表令人印象深刻 - 看看它:

Codeium 支持的 IDE 列表,带有 IDE 名称和图标

除此之外,Codeium 团队还传达了一条非常引人注目的信息,即为什么 Codeium for Individual(个人版)现在和将来都是免费的,这个工具似乎是这个领域的一个很棒的产品。

总之,Codeium提供:

  • 实时、近乎即时的代码建议
  • 极其广泛的 IDE 支持

ColPat (Color Palette & Design Tool)

你可以制作世界上最好的应用程序,但如果它看起来很痛苦,或者它甚至只是丑陋,人们将很难参与其中。寻找看起来不错的互补色和主题有时需要训练有素的眼睛——或者大量的试验和错误。

幸运的是,ColPat 提供了一种为您的网站或应用程序创建主题和颜色的简单方法:

科尔帕特设计工具主页

只有两个ColPat的工具——来自图像的色板和来自颜色的调色板——专门标识为使用人工智能来准备结果。否则,似乎这一切都发生在本地;通过浏览源存储库,尚不清楚AI实际上如何参与生成调色板,或者是否参与生成。

但是,ColPat 仍然是一个很棒的工具,它绝对可以帮助您为您的网站或应用程序生成互补的配色方案。

总之,科尔帕特是:

  • 非常适合快速确定应用的精美设计
  • 可能实际上不是人工智能辅助的,但仍然运行良好

RegExGPT

在开发生涯的某个时刻,您需要从更大的文本字符串中过滤文本。造成这种情况的潜在原因有很多——也许您正在尝试将数据从一种类型转换为另一种类型,或者您正在尝试自动化某些内容。

在你职业生涯的早期,你可能会满足于拆分一些字符串和处理字符数。但最终,您可能会最终使用正则表达式。

正则表达式在软件开发中无处不在,因为它们非常强大。但是,它们并不容易阅读。

例如,谷歌提供了一些例子,展示了一些实现特定目的的正则表达式,但它们并不是你所说的很容易解释的。在像StackOverflow这样的网站上也有复杂的帖子,他们发现语法非常神秘。

例如,此正则表达式获取以 、 和 结尾的匹配电子邮件地址:yahoohotmailgmail

(\W|^)[\w.\-]{0,25}@(yahoo|hotmail|gmail)\.com(\W|$)

还有其他网站,如正则表达式 101,可以让您提供一些输入,然后使用您的正则表达式,直到它完成您想要它做的事情。

传统上,这种方法 - 提供输入,然后尝试制作查询,直到你得到你想要的东西 - 是你实现其中许多目标的方式。当然,这是在访问了大约每个关于ColPat如何工作的StackOverflow问题之后。这可能是一个耗时的过程。

幸运的是,我们可以通过使用 RegExGPT 快进很多这个过程。无需猜测ColPat,您可以简单地提供字符串以及您希望从中获得的值。

对于更复杂的查询,您还可以提供自然语言提示 - 例如,“我想要逗号分隔数组中的第三个值” - RegExGPT将泵出一个RegEx,该RegEx完全可以执行您希望它执行的操作。

例如,冒着召唤 Zalgo 的风险,我可以使用 RegEx 从 HTML 锚点选项卡中读取:href

正则表达式生成器与输入

RegExGPT给出了这个有用的回复:

来自正则表达式的输出,建议使用正则表达式

在Chrome开发人员控制台中旋转时,我们可以看到结果符合预期:

正则表达式由正则表达式生成,在Chrome开发者控制台中具有预期结果

正则表达式从未如此简单!

总之,您可以使用正则表达式GPT来:

  • 让 AI 为您编写神秘的正则表达式
  • 彻底测试生成的表达式!流氓正则表达式查询可能会造成相当大的伤害

AI 开发人员工具的摘要表

那么,当您遇到特定问题时,您应该使用什么工具?

工具

非常适合...

Phind

...查找与编码特别相关的问题的答案,以比 ChatGPT 更详细的形式

bloop.ai

。了解以前从未见过的代码库的工作原理 ,以便您可以快速开始使用 它

Codeium

。获得上下文建议并自动完成,编码种类繁多,可以达到 OLS

ColPat

。为您的应用程序快速生成调色板(即使它在技术上不是 AI 驱动的)

正则表达式

...为您选择的语言生成正则表达式查询

小告诫

有了所有的人工智能辅助工具,尝试解决开发问题突然变得容易多了。但是很多这些技术都是基于 GPT-3.5 或 GPT4 的。这些语言模型是一个巨大的飞跃,对广泛的应用程序很有帮助。

但是,截至目前,有时向AI模型提出问题可能会导致AI模型不知道。当这种情况发生时,模型不会告诉你它不知道,而是经常试图虚张声势地通过答案。这些在技术上被称为幻觉。

这可能有两个问题。对于初学者来说,你可能会得到错误的信息,听起来合理,但完全错误。

随后,因为它听起来很有道理,你可能会花相当多的时间试图让人工智能解决方案工作,然后才意识到它永远不会奏效。这是浪费时间,不利于您的生产力,这就是我们首先在这里的全部意义。

如果你的 AI 解决方案不适合你,不要害怕快速失败并尝试其他提示。

其次,考虑一下当你问工作场所的某个人如何解决某个问题时会发生什么。如果这个“解决方案”引入了一个更大的问题,你就有人回去问代码出了什么问题。对于基于 GPT 的解决方案,情况并非如此。

例如,假设您使用 GPT 辅助语言模型生成了正则表达式查询。如果该正则表达式在小型测试中为您工作一次,但在生产中对更大的数据集失败,那完全取决于您。

没有高级开发人员会接受,“但是AI建议了特定的正则表达式查询!”作为中断之类的借口。当然,为人工智能编写的代码可能引入的问题部署补丁也会损害您的工作效率。

底线是这样的:人工智能绝对可以在各种情况下帮助你,并提供令人难以置信的帮助。但只有您作为开发人员才能认可给定的解决方案。

无论您是在编写代码还是 AI 在帮助您编写代码,质量始终很重要。使用单元测试和自动化测试来证明您的代码工作现在比以往任何时候都更加重要。

结论

现在是成为开发人员的好时机,人工智能为开发人员多年来面临的许多问题提供了解决方案。无论您是在编写新代码,尝试理解现有的代码库,还是只是想要一个新的调色板,都可以使用一种工具。

明智地使用这些工具将相当于节省许多时间,毫无疑问,我们将继续看到这个空间的戏剧性发展。如果您找到了另一个对您有所帮助的 AI 驱动的工具,请务必在评论中告诉我们!

在几分钟内设置LogRocket的现代错误跟踪:

  1. 访问 https://logrocket.com/signup/ 以获取应用 ID
  2. 通过 npm 或脚本标签安装 LogRocket。 必须调用客户端,而不是服务器端LogRocket.init()

npm:

$ npm i --save logrocket

// Code:

import LogRocket from 'logrocket';
LogRocket.init('app/id');

script tag

Add to your HTML:

<script src="https://cdn.lr-ingest.com/LogRocket.min.js"></script>
<script>window.LogRocket && window.LogRocket.init('app/id');</script>

  1. (可选)安装插件以与您的堆栈进行更深入的集成:
  • 冗余中间件
  • NgRx 中间件
  • Vuex 插件

3D建模学习工作室 整理翻译,转载请注明出处!

Logo

欢迎加入我们的广州开发者社区,与优秀的开发者共同成长!

更多推荐