Using AI In Your Daily Dev Workflow

AI 不会取代你的工程判断力。它能帮助你更快地从陷入困境转向拥有多种选择。利用它来寻找替代方案。利用测试和评审来寻找真相。

以下是如何在不被炒作误导的情况下使用 AI。

  1. 寻找性能瓶颈

使用 AI 来识别常见问题,例如缓慢的数据库调用或庞大的 bundle size。向它询问:

  • 需要捕获的指标,例如 RUM 或服务器耗时。
  • 安全的实验方案,例如缓存或分页。
  • 一份防止遗漏明显错误的检查清单。
  1. 生成测试用例

不要只写那些显而易见的测试。给 AI 一个函数签名或规范。要求它提供:

  • 边界情况。
  • 奇葩输入。
  • 并发或竞态条件。
  • 基于属性的测试(Property-based testing)思路。

这能提高代码的可靠性。

  1. 在约束条件下进行重构

不要说“把这个改好”。这太模糊了。使用具体的提示词:

  • “在不改变行为的前提下降低圈复杂度。”
  • “提取纯函数并使副作用显式化。”
  • “保持公共 API 不变,但提高可读性。”

具体的约束条件能产生更好的结果。

  1. 请求包含丰富上下文的解释

当你提供细节时,AI 能帮你学得更快。可以问这类问题:

  • “为什么这个 React render 在 StrictMode 下会触发两次?”
  • “这个 SQL 查询计划的原因是什么?”
  • “在这个特定的代码库中,我应该把这个校验放在哪里?”

即使答案并不完美,它也能为你指明正确的文档方向。

  1. 验证一切

遵循“先信任,后验证”的循环:

  • 如果能编译通过,就进行测试。
  • 如果涉及安全性,就进行两次评审。
  • 如果它陈述了一个事实,就去核实来源。

AI 会犯错。你的流程必须确保这些错误能以极低的成本被发现。

A prompt template for better answers

在编写提示词时,请包含以下五个部分:

  • 目标:你想要实现什么。
  • 上下文:你使用的语言和框架。
  • 输入:你的代码、日志或错误信息。
  • 输出格式:列表、步骤或 diff。
  • 约束条件:性能、可读性或不引入新的依赖。

Source: https://dev.to/imkrunal/using-ai-in-your-daily-dev-workflow-without-the-hype-57b1