别只会问 AI 答案,写代码时要学会让 AI “反问你”

很多开发者使用 AI 还停留在“帮我写个组件”、“帮我修个 Bug”的原始阶段。这种方式产出的代码往往风格不一、逻辑缺漏、难以维护

核心转变: 不要直接索要答案,而是让 AI 变成你的高级架构师/咨询顾问,通过反向提问来梳理逻辑。

下面我以前端为例:


:hammer_and_wrench: 五大实战场景应用

1. 组件开发前:理清业务需求

:cross_mark: 错误姿势: “帮我写一个表单组件。”

:white_check_mark: 正确姿势: “我要写一个前端表单组件,你用提问方式帮我把需求问清楚。”

AI 可能会问你:

  • 框架选择:Vue、React 还是原生?

  • 校验逻辑:是否需要表单验证?规则是什么?

  • 交互项:输入框、单选、多选、还是文件上传?

  • 状态控制:是否需要禁用、只读、占位符或默认值?

  • 数据流向:提交后是调用接口,还是本地处理?

  • UI 风格:简约风格、卡片式还是带吸顶标签?


2. 布局排查:定位样式顽疾

:cross_mark: 错误姿势: “我的页面样式乱了。”

:white_check_mark: 正确姿势: “我这个布局出问题了,你通过问我问题,帮我排查原因。”

AI 可能会问你:

  • 布局模式:使用了 Flex 还是 Grid?

  • 影响因子:是否有浮动(Float)或未清除浮动?

  • 盒模型:是否设置了明确的宽高、overflowbox-sizing

  • 优先级:样式是否被其他 CSS 规则覆盖?控制台有横杠吗?

  • 适配场景:是移动端响应式问题,还是 PC 端特定分辨率问题?


3. Bug 调试:做你的 Debug 引导员

:cross_mark: 错误姿势: 直接贴报错信息求修复。

:white_check_mark: 正确姿势: “针对这个报错,你提问我来答,引导我定位问题。”

AI 可能会问你:

  • 错误位置:报错在哪一行?具体堆栈信息是什么?

  • 类型判定:是浏览器控制台报错、接口异常,还是页面渲染白屏?

  • 触发路径:操作到哪一步出现的?是否可以稳定复现?

  • 变量对照:这个功能之前是好的吗?在改动了哪些代码后变坏的?

  • 环境因素:依赖版本是否有更新?是否存在缓存冲突?


4. 逻辑设计:挖掘边界场景

:cross_mark: 错误姿势: “帮我写个搜索功能。”

:white_check_mark: 正确姿势: “我要写 XX 功能,你帮我提问,把所有边界情况和异常场景问出来。”

AI 可能会问你:

  • 数据极端值:空数据、异常脏数据如何展示?

  • 并发处理:快速连续点击是否会导致重复请求?

  • 状态反馈:加载中(Loading)、失败重试、无更多数据(End)的 UI 路径?

  • 交互细节:移动端键盘弹出是否会遮挡输入框?

  • 性能优化:接口响应慢时,是否需要防抖(Debounce)或节流(Throttle)?


5. 代码重构:梳理架构结构

:cross_mark: 错误姿势: “我想重构这段代码。”

:white_check_mark: 正确姿势: “我想重构这段前端逻辑,你通过提问帮我理清重构后的结构。”

AI 可能会问你:

  • 逻辑抽离:哪些业务逻辑可以抽离成独立的函数或自定义 Hook?

  • 复用性:哪些是高频重复代码,可以封装成公共组件?

  • 状态管理:状态应该放在局部(props)、全局(Pinia/Redux)还是 URL 中?

  • 组件拆分:是否需要按照功能单一职责原则拆分成更小的子组件?


:light_bulb: 核心思维总结

维度 传统模式 (低效) AI 引导模式 (高效)
交互逻辑 我提需求 → AI 盲目写 → 我痛苦改 我提方向 → AI 反向提问 → 我理清逻辑 → AI 精准输出
代码质量 割裂、补丁式代码 规范、覆盖边界的工程化代码
个人成长 沦为代码搬运工 锻炼架构思维与逻辑完备性

结论: AI 不是替你写代码的机器,而是帮你把代码写得更稳、更快、更规范的助攻。

6 个赞

6的,经常不知道咋问问题 :+1:

2 个赞

:writing_hand:这还挺有道理的,下次就试试

2 个赞

收藏起来了!

2 个赞

这个流程感觉可以变成技能,挺好 要是能自动触发就好了

这个角度挺好,很多人现在用 AI 还是停在“直接要答案”,但真正能把质量拉开的,往往就是你说的这一步:先让 AI 反向提问,把需求、边界和约束条件问清楚。
我自己也越来越觉得,AI 最有价值的时候不是替人省掉思考,而是帮人把思考结构化。
如果后面你愿意继续写,我还挺想看你补一个“同一个需求,直接要答案 vs 先反问澄清” 的前后对比案例,会很有说服力。

1 个赞