ChatGPT: 一个开发人员的利器

释放双眼,带上耳机,听听看~!
了解如何作为开发者从ChatGPT人工智能工具中获益,加快开发过程,轻松完成工作。使用ChatGPT生成代码、脚本和片段,进行自动化工作流程。

ChatGPT是现在开发者中最热门的东西!在这篇文章中,我将告诉你,作为一个开发者,你如何能从这个人工智能工具中获益。通过实际的例子和内部提示,我将告诉你如何加快你的开发过程,使你的生活更轻松。所以,让我们开始吧!

❓ 什么是ChatGPT?

什么是ChatGPT?好问题。它是一个聊天机器人吗?一个文本生成工具?或者只是另一个很快就会使我们这些开发者被淘汰的人工智能模型?让我们自己来问吧。
ChatGPT: 一个开发人员的利器
” loading=”lazy”>

现在,在你惊慌失措之前,让我解释一下:ChatGPT的确是一个用于文本生成的人工智能模型,但它的意义远不止于此。它是一个通用的工具,可以帮助作为开发者的你更快、更有效地完成工作,甚至更有创造性。

但ChatGPT的秘密是什么?嗯,它是基于一个所谓的生成性预训练转化器,简称GPT。听起来像科幻小说中的武器,但它实际上只是一个训练有素的算法,用于生成人类写的自然语言文本。

而通过ChatGPT,你可以在你的开发过程中使用这个强大的工具。但要注意!这不是万能的!ChatGPT不是万能的,应该谨慎使用。你必须注意什么,你现在就会知道。

现在好奇了吗?目前每个人都可以免费使用ChatGPT。你所要做的就是用你的电子邮件地址创建一个账户

👉开发人员如何使用ChatGPT?

1.开发代码、脚本和片断

ChatGPT可以帮助开发者通过输入简短的提示信息自动生成代码、脚本和片段。这可以节省时间和精力。然而,重要的是要确保生成的代码符合要求,并在部署前进行全面测试。ChatGPT还可以充当 “代码检查器”,提出改进建议。

此外,ChatGPT还可以帮助编写自动化工作流程。总的来说,ChatGPT为代码开发提供了巨大的支持,但重要的是仍然要有技能和知识来从头编写和优化代码。

我更喜欢在生成配置文件时使用它。在那里,需要许多很少使用的参数,因此你的脑子里没有这些参数。最近,我想用测试阶段来扩展一个现有的CI/CD环境。现有的脚本看起来像这样:

name: Node.js CI/CD Workflow with frontend
on:
  push:
    branches: [ "master" ]
jobs:
  test-and-build:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [16.x]
    steps:
    - uses: actions/checkout@v3

    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v3
      with:
        node-version: ${{ matrix.node-version }}
        cache: 'npm'

    - name: Build Frontend
      run: npm i --prefix client && npm run build --prefix client
      env:
       CI: false

    - name: Push to build branch
      uses: s0/git-publish-subdir-action@develop
      env:
        REPO: self
        BRANCH: build # The branch name where you want to push the assets
        FOLDER: ./public # The directory where your assets are generated
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # GitHub will automatically add this - you don't need to bother getting a token
        MESSAGE: "Build: ({sha}) {msg}" # The commit message

进入全屏模式 退出全屏模式

ChatGPT为我重新设计了这个缺失的步骤。我只是在提示中传递了现有的配置文件。

[...]
    - name: Install dependencies and run tests
      run: |
        npm install
        npm run test
      env:
        CI: true # set environment variable to run tests in CI mode
[...]

进入全屏模式 退出全屏模式

2.编写文件

通过简单地要求ChatGPT提供你想要的文档,你可以让它生成结构化的文档,涵盖你的代码或项目的所有重要方面。你的IDE的扩展也可以帮助你做到这一点。我将在后面更详细地讨论这个问题。

然而,重要的是要确保生成的文档是完整的、可理解的。在把它传递给客户或用户之前,人们还应该花时间审查它,并在必要时对它进行编辑。

我这里有一个很好的例子。想象一下,你在看另一个开发者的代码,他没有注意函数的命名,也没有创建注释。当你看完代码的时候,ChatGPT已经为你提供了解决方案。或者你能在10秒内告诉我这段代码的作用吗?

import random
def whatDoesThisFunction(numbers):
    for i in range(len(numbers)):
        for j in range(i+1, len(numbers)):
            if numbers[j] < numbers[i]:
                numbers[i], numbers[j] = numbers[j], numbers[i]
    return numbers
if __name__ == '__main__':
    numbers = [random.randint(1, 100) for _ in range(10)]
    sorted_numbers = whatDoesThisFunction(numbers)
    print(sorted_numbers)

进入全屏模式 退出全屏模式

我要求ChatGPT “在代码中写上注释:”。结果是这样的:


def whatDoesThisFunction(numbers):
    """
    This function takes in a list of numbers and sorts them using the bubble sort algorithm.
    """
    for i in range(len(numbers)):
        for j in range(i+1, len(numbers)):
            if numbers[j] < numbers[i]:
                numbers[i], numbers[j] = numbers[j], numbers[i]  # Swap the values if the jth element is smaller than the ith element.
    return numbers
if __name__ == '__main__':
    numbers = [random.randint(1, 100) for _ in range(10)]  # Generate a list of 10 random integers between 1 and 100.
    sorted_numbers = whatDoesThisFunction(numbers)  # Call the function to sort the numbers.
    print(sorted_numbers)  # Print the sorted list of numbers.

进入全屏模式 退出全屏模式

我想我不需要再多说什么了 🙂

3.提供思想食粮

试图解决一个问题时被卡住而没有想法,这可能是令人沮丧的。在这种情况下,ChatGPT可以作为一个发人深省的工具,提出其他方法和想法。由于ChatGPT有能力分析广泛的信息和识别模式,它往往能提出意想不到的有用建议。虽然它不一定能提供完美的解决方案,但它可以帮助刺激创造性的过程,找到解决问题的新方法。

4.测试编写

当涉及到编写测试时,它可能是非常耗时和乏味的。但有了ChatGPT,你可以将这项繁琐的工作自动化,并加快你的代码开发过程。

它是如何工作的?只需向ChatGPT提交一个请求,描述你想要创建的测试案例。然后人工智能引擎将自动为您生成测试案例代码!这意味着更少的压力和更快的代码生成!这意味着更少的压力和更快的代码生成,所以你可以专注于其他重要任务。

我想向你演示一下整个事情。我这里有来自一个现有Rest API的中间件的代码:

// Middleware to validate challenge parameters
validateChallenge: (req, res, next) => {
  // Check if request body, challengeID, done and code are present and have expected data types
  if (
    !req.body ||
    !req.body.challengeID ||
    !req.body.code ||
    !req.body.done
  ) {
    return res.status(400).send({
      msg: 'Please enter valid challenge params!', // Send error message if validation fails
    });
  }
  next(); // Call next middleware function if validation passes
},

进入全屏模式 退出全屏模式

现在我们把这段代码传给ChatGPT,提示如下:”为这段代码编写测试:CODE”。

只需一次点击,ChatGPT就会为我们的代码吐出总共5个测试案例。
ChatGPT: 一个开发人员的利器
” loading=”lazy”>

如果你的项目中已经有其他测试,你当然可以告诉ChatGPT为特定的框架生成单元测试。

总的来说,ChatGPT可以帮助你更有效地工作,简化测试编写过程。所以,为什么不把这个繁琐的任务外包给人工智能,优化你的开发时间呢?

💡 使用ChatGPT时的提示

在我的日常开发工作中使用ChatGPT已经有一段时间了,我能够找到一些使用ChatGPT的技巧和窍门。

1.正确选择提示语

为了得到好的结果,你必须准确告诉ChatGPT你想要什么。在提示中多写1-2句话,但你通常会得到更好的结果。

2.正确的IDE扩展

现在在市场和商店里有许多可用于所有IDE的扩展。只要浏览一下商店就可以了。由于我个人使用Visual Studio Code,我只能推荐它的Genie扩展。
ChatGPT: 一个开发人员的利器
” loading=”lazy”>

3.注意敏感/机密数据

开发人员经常处理敏感数据,如用户信息或公司秘密数据。因此,作为一个开发人员,确保这些数据在使用ChatGPT时不会意外地暴露出来是至关重要的。

这里的最佳做法是只向ChatGPT提供测试数据。通过确保不使用机密信息,你可以防止意外的数据泄露,并保证你的数据安全。

4.ChatGPT在有例子的情况下效果更好

给出例子是提高ChatGPT性能的一个重要步骤。例如,如果你要求ChatGPT生成SQL查询或代码,如果你提供具体的例子,你会得到更好的结果。

通过提供几行SQL代码或表的结构,ChatGPT可以更好地理解你的需求,并能提供更准确的结果。同样的,如果你想让ChatGPT对代码进行注释。通过提供注释样本,ChatGPT可以更好地理解你的需要,并可以生成更准确的注释。

5.使用英语语言

我的母语是德语,所以对我来说,创建德语提示比较容易。然而,我注意到ChatGPT能更好地理解英文提示,因此能给出更好的结果。几乎所有的开发者资源和文档都是英文的,所以ChatGPT自然能更好地理解这一点。

🐛 ChatGPT并不完美–也会犯错

尽管ChatGPT是人工智能文本生成的一个令人印象深刻的例子,但它仍然会犯错误。ChatGPT的主要局限性之一是,它是基于2021年的数据,这意味着它可能使用过时的技术和框架。出于这个原因,重要的是,开发人员在运行生成的代码之前要仔细审查,以确保它是正确和安全的。

另一点需要注意的是,ChatGPT不能理解不同编程技术和概念之间的深层关系。它可以生成语法上正确的代码,但可能不具备所需的功能或效率。在这种情况下,开发人员必须使用人工审查和他们自己对基础概念和关系的理解,以确保生成的代码符合要求。

📍 总结

在这个技术和进步的时代,人工智能可以成为一个非常有价值的工具。ChatGPT作为领先的人工智能模型之一,可以以各种方式帮助开发人员 – 从开发代码和脚本到编写测试和文档。

当然,在使用ChatGPT时,有一些事情需要注意,比如选择正确的提示和IDE扩展,以及避免在提示中出现敏感数据。但是,这不应该阻止我们充分利用人工智能的力量!

总的来说,ChatGPT对任何开发者都是一个有用的助手,可以帮助节省时间和精力。然而,如果你过于依赖人工智能,就有可能在人工智能失败时如鱼得水。因此,你仍然应该具备必要的技能和知识,在没有ChatGPT的情况下完成工作。

所以,亲爱的开发者,不要太害怕使用ChatGPT,但不要忘记,所有闪闪发光的东西都不是金子。现在,让我们都回到我们的工作中去,热情地看着我们的新人工智能助手的眼睛吧!

本网站的内容主要来自互联网上的各种资源,仅供参考和信息分享之用,不代表本网站拥有相关版权或知识产权。如您认为内容侵犯您的权益,请联系我们,我们将尽快采取行动,包括删除或更正。
AI教程

如何快速掌握并构建最先进的深度学习算法

2023-12-9 10:48:14

AI教程

llama_index文档机器人使用注意事项和操作流程

2023-12-9 11:01:14

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索