Skip to main content

为任务选择合适的 AI 工具

了解 GitHub 的 AI 工具,以及如何使用这些工具来帮助开发软件。

概述

AI 工具的使用正日益成为软件开发人员日常工作流的标准部分。 若要想在就业市场上具有竞争力,就必须了解作为开发人员,在面对每项任务时应使用哪些 AI 工具。

GitHub 的 AI 工具为软件开发生命周期 (SDLC) 的每个阶段提供帮助:

  • 规划
    • Copilot 对话助手 可以帮助你集思广益,为项目确定最佳技术****。
    • Copilot 对话助手 可以创建议题来帮助跟踪创意****。
  • 代码创建
    • Copilot 代码补全有助于在你键入时添加代码****。
    • 下一个编辑建议 (公共预览版) 可预测你可能进行的下一次编辑,并给出相应的补全建议****。
    • Copilot 对话助手 可以在对话环境中回答问题并提供建议****。
    • 你可以将 Copilot 编码智能体 分配给一个开放的议题,它会自动提出一个拉取请求来处理必要的更改****。
  • 审查
    • Copilot 代码评审 会在你喜欢的 IDE 中提供反馈,或在 GitHub 上以拉取请求审查形式提供反馈****。
  • 测试
    • Copilot 对话助手 可帮助你编写和调试测试****。
  • 部署:
    • Copilot 对话助手 可帮助你配置持续集成和持续部署 (CI/CD) 管道****。
  • 运行:
    • Copilot 编码智能体 (公共预览版) 可为开放议题提出拉取请求****。
    • Copilot 对话助手 可帮助你处理当前正在进行的任务****。

规划

在规划阶段,你定义项目的目标、范围和要求,通过概述需要生成的内容及其实现方式来设置开发方向。

在 GitHub 上,使用由 Copilot 提供支持的问题创建 (公共预览版) 来简化创意跟踪****。 提供简短的自然语言提示(或上传图像),Copilot 将为你生成结构化问题。

选择需要解决的问题后,Copilot 对话助手 可以帮助你为项目集思广益,了解可能需要的各种工具、库和资源****。 可以询问 Copilot 对话助手 有关你所设想的项目的一般性问题,以获得方向建议。 例如:

我想生成一个 Web 应用来帮助用户跟踪自己的日常习惯并提供个性化建议。 你能为我推荐一些可以使用的功能和技术吗?

作品

在创建阶段,你将为应用程序编写和完善代码。 你可以通过实现功能、修复 bug 和迭代代码库来实现项目。

当你在喜欢的 IDE 或 GitHub 上进行编码时,Copilot 会提供自动补全风格的编码建议,帮助你更快地起草和完善代码****。 你可以直接编写代码,或在 IDE 中使用评论以自然语言描述意图,Copilot 将生成相关建议。

通过 下一个编辑建议 (公共预览版),Copilot 可以根据你主动进行的更改预测相关的编辑****。 例如,如果重命名变量或更新函数的参数,则会建议在整个代码中进行相应的更新。 这有助于保持一致性并减少错误的可能性。

在询问模式中使用 Copilot 对话助手

在询问模式下使用 Copilot 对话助手(作为配对程序员),在编码任务中获得帮助,理解棘手的概念,并改进代码****。 可以实时向它提问、获取解释或请求建议。

你能解释一下此 JavaScript 函数的作用吗? 我不知道它为什么使用 forEach 循环而不是 for 循环。

JavaScript 中的 letconstvar 有什么区别? 我应该在什么时候使用哪一个?

在编辑模式中使用 Copilot 对话助手

当你想要对 Copilot 提出的编辑进行更精细的控制时,请在编辑模式下使用 Copilot 对话助手****。 在编辑模式下,选择 Copilot 可以更改的文件,在每次迭代时为 Copilot 提供上下文,并确定是否接受建议的编辑。

重构 calculateTotal 函数以提高可读性和效率。

登录功能无法正常工作。 你能调试吗?

按照 Python 的 PEP 8 风格指南设置此代码的格式。

在代理模式中使用 Copilot 对话助手

在代理模式中,Copilot 对话助手 可以帮助自动执行重复任务,并直接在项目中管理工作流****。 在进行代码更改后,使用它来创建拉取请求。 在处理项目时,还可以使用它在后台运行测试和 Linter。

user-auth 模块中的最近更改创建拉取请求,并包含更新摘要。

运行 payment-processing 模块的所有测试和 Linter,并提供所发现问题或错误的摘要。

评价

审查阶段确保代码的质量和可靠性****。 它涉及分析更改、识别潜在问题以及改进代码库的整体结构和功能。

当在 IDE 中编码时,要求 Copilot:

  • 审查所选更改: 突出显示代码的特定部分,并要求 Copilot 进行初步审查。 这非常适合对较小的编辑进行快速反馈。
  • 审查全部更改: 请求对文件或项目中的所有更改进行深入审查。 Copilot 将分析你的工作,并提供改进建议。

准备好在 GitHub 网站上获取其他人的反馈时,首先在拉取请求上将 Copilot 分配为审查者****。 它会自动添加评论,在人工审查前突出显示可以提高代码质量或识别潜在错误的地方。

测试

测试阶段验证应用程序是否正常工作。 此阶段涉及编写和运行测试来捕获 bug、确保功能并在部署之前维护代码质量。

Copilot 对话助手 可以通过生成单元和集成测试、调试故障和建议其他测试用例来帮助确保全面覆盖****。 下面是一些提示示例:

为此函数编写单元测试,以计算数字的阶乘。 包括 0 和负数等边缘情况。

如何使用 Python 的 unittest 框架运行这些测试?

为 BankAccount 类中的 deposit 函数编写集成测试。 使用模拟来模拟通知系统。

为确保此模块的全面覆盖,还应增加哪些测试?

部署

部署阶段涉及为生产准备代码并确保顺利发行。

Copilot 对话助手 可帮助配置部署脚本、设置 CI/CD 管道以及排查问题****。 下面是一些提示示例:

使用 GitHub Actions 为 Node.js 应用程序编写部署脚本,以部署到 AWS EC2 实例。

设置 GitHub Actions 工作流以生成、测试 Python 应用程序并将其部署到 Heroku。

分析此部署日志,并提出部署失败的原因。

操作

在操作阶段,重点是在生产中维护和监视应用程序,以确保应用程序顺利运行,并满足用户的期望。 此阶段通常涉及调试生产问题、优化性能以及确保系统可靠性等任务。

可以将 Copilot 编码智能体 (公共预览版) 用作自主代理,帮助维护和改进生产中的应用程序****。 将 GitHub 问题分配给 Copilot,它将自主浏览仓库,识别潜在的修复,并创建包含建议更改的拉取请求。 然后,它会自动请求你进行审查。

对于自己正在解决的问题,请使用 Copilot 对话助手 来帮助分析日志、调试问题和提出优化建议****。 例如:

分析此错误日志,并提出问题可能的原因。

编写脚本以监视此应用程序的内存使用情况,并在超过阈值时发出警报。

如何优化此代码中的数据库查询以提高性能?

后续步骤

在开始下一个任务之前,请花点时间确定正确的工具,以提高工作速度和效率。

准备好为下一项任务确定合适的 AI 工具了吗?

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy