Skip to content

Latest commit

 

History

History
296 lines (202 loc) · 8.38 KB

File metadata and controls

296 lines (202 loc) · 8.38 KB

胶水编程(Glue Coding)方法论

软件工程的圣杯与银弹——终于出现了。


颠覆性宣言

胶水编程不是一种技术,而是一场革命。

它可能完美解决了 Vibe Coding 的三大致命缺陷:

传统 Vibe Coding 的痛点 胶水编程的解法
🎭 AI 幻觉 - 生成不存在的 API、错误的逻辑 零幻觉 - 只使用已验证的成熟代码
🧩 复杂性爆炸 - 项目越大越失控 复杂性归零 - 每个模块都是久经考验的轮子
🎓 门槛过高 - 需要深厚编程功底才能驾驭 AI 门槛消失 - 你只需要描述"连接方式"

核心理念

传统编程:人写代码
Vibe Coding:AI 写代码,人审代码
胶水编程:AI 连接代码,人审连接

范式转移

从「生成」到「连接」的根本性转变:

  • ❌ 不再让 AI 从零生成代码(幻觉的根源)

  • ❌ 不再重复造轮子(复杂性的根源)

  • ❌ 不再要求你理解每一行代码(门槛的根源)

  • ✅ 只复用成熟的、经过生产验证的开源项目

  • ✅ AI 的唯一职责:理解你的意图,将模块连接起来

  • ✅ 你的唯一职责:描述清楚「输入是什么,输出要什么」


架构哲学

┌─────────────────────────────────────────────────────────┐
│                    你的业务需求                          │
└─────────────────────────────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────┐
│                   AI 胶水层 (Glue Layer)                 │
│                                                         │
│   "我理解你要做什么,让我把这些积木连起来"                  │
│                                                         │
└─────────────────────────────────────────────────────────┘
                           │
          ┌────────────────┼────────────────┐
          ▼                ▼                ▼
   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐
   │  成熟模块 A  │  │  成熟模块 B  │  │  成熟模块 C  │
   │  (10 万+ ⭐)  │  │  (生产验证)  │  │  (官方 SDK)  │
   └─────────────┘  └─────────────┘  └─────────────┘

实体 (Entity):成熟的开源项目、官方 SDK、久经考验的库

连接 (Link):AI 生成的胶水代码,负责数据流转和接口适配

功能 (Function):你描述的业务目标


为什么这是银弹?

1. 幻觉问题 → 彻底消失

AI 不再需要"发明"任何东西。它只需要:

  • 阅读模块 A 的文档
  • 阅读模块 B 的文档
  • 写出 A → B 的数据转换

这是 AI 最擅长的事情,也是最不容易出错的事情。

2. 复杂性问题 → 转嫁给社区

每个模块背后都有:

  • 数千个 Issue 的讨论
  • 数百个贡献者的智慧
  • 数年的生产环境打磨

你不是在管理复杂性,你是在站在巨人的肩膀上。

3. 门槛问题 → 降到最低

你不需要懂:

  • 底层实现原理
  • 最佳实践细节
  • 边界情况处理

你只需要会说人话:

"我要把 Telegram 的消息,经过 GPT 处理,存到 PostgreSQL"

AI 会帮你找到最合适的轮子,然后把它们粘起来。


实践流程

1. 明确目标
   └─→ "我要实现 XXX 功能"

2. 寻找轮子
   └─→ "有没有成熟的库/项目已经做过类似的事?"
   └─→ 让 AI 帮你搜索、评估、推荐

3. 理解接口
   └─→ 把官方文档喂给 AI
   └─→ AI 总结:输入是什么,输出是什么

4. 描述连接
   └─→ "A 的输出要变成 B 的输入"
   └─→ AI 生成胶水代码

5. 验证运行
   └─→ 跑通 → 完成
   └─→ 报错 → 把错误扔给 AI,继续粘

经典案例

案例:Polymarket 数据分析 Bot

需求:实时获取 Polymarket 数据,分析后推送到 Telegram

传统做法:从零写爬虫、写分析逻辑、写 Bot → 3000 行代码,2 周时间

胶水做法

轮子 1: polymarket-py (官方 SDK)
轮子 2: pandas (数据分析)
轮子 3: python-telegram-bot (消息推送)

胶水代码:50 行
开发时间:2 小时

核心原则

3.1 凡是能不写的就不写,凡是能少写的就少写

任何已有成熟实现的功能,都不应该重新造轮子

3.2 凡是能 CV 就 CV

直接复制使用经过社区检验的代码,属于正常工程流程,而非偷懒

3.3 站在巨人的肩膀上,而不是试图成为巨人

利用成熟框架,而不是试图自己再写一个"更好的轮子"

3.4 不修改原仓库代码

所有开源仓库应尽量保持不可变,作为黑盒使用

3.5 自定义代码越少越好

你写的代码只承担:

  • 组合
  • 调用
  • 封装
  • 适配

也就是所谓的胶水层


胶水编程的标准流程

4.1 明确需求

把系统要实现的功能拆成一个个需求点

4.2 使用 AI 拆解需求

让 AI 将需求细化为可复用模块、能力点和对应的子任务

4.3 搜索现成的开源实现

利用 AI 的联网能力:

  • 根据每个子需求搜索对应的 GitHub 仓库
  • 检查是否存在可复用组件
  • 对比质量、实现方式、许可证等

使用 GitHub Topics 精准找轮子

提示词示例:

我需要实现 [你的需求],请帮我:
1. 分析这个需求可能涉及哪些技术领域
2. 推荐对应的 GitHub Topics 关键词
3. 给出 GitHub Topics 链接(格式:https://github.com/topics/xxx)

常用 Topics 示例:

需求 推荐 Topic
Telegram Bot telegram-bot
数据分析 data-analysis
AI Agent ai-agent
CLI 工具 cli
Web 爬虫 web-scraping

4.4 下载并整理仓库

将选定的仓库拉取到本地,分类整理

4.5 按架构体系进行组织

把这些仓库放置到项目结构中:

/services
/libs
/third_party
/glue

强调: 开源仓库作为第三方依赖,绝对不可修改。

4.6 编写胶水层代码

胶水代码的作用:

  • 封装接口
  • 统一输入输出
  • 连接不同组件
  • 实现最小业务逻辑

胶水编程的价值

价值 说明
极高的成功率 使用社区验证过的成熟代码
开发速度极快 大量功能可以直接复用
降低成本 时间、维护、学习成本大幅减少
系统更稳定 依赖成熟框架而非个人实现
易于扩展 通过替换组件就能升级能力
与 AI 强配 AI 辅助搜索、拆解、整合

胶水编程 vs 传统开发

项目 传统开发 胶水编程
功能实现 自己写 复用开源
工作量 小得多
成功率 不确定
速度 极快
错误率 容易踩坑 使用成熟方案
重点 "造轮子" "组合轮子"

典型应用场景

  • 快速原型开发
  • 小团队构建大系统
  • AI 应用/模型推理平台
  • 数据处理流水线
  • 内部工具开发
  • 系统集成(System Integration)

总结

能抄不写,能连不造,能复用不原创。

胶水编程是 Vibe Coding 的终极进化形态。

它不是偷懒,而是工程智慧的最高体现——

用最少的原创代码,撬动最大的生产力。

这就是软件工程等待了 50 年的银弹。


"The best code is no code at all. The second best is glue code."