2.3 胶水编程

什么是胶水代码

胶水代码(Glue Code)是软件开发中一个重要概念。它指的是连接不同软件组件的代码——本身不包含业务逻辑,而是负责协调和整合。

想象你在做一份研究报告。数据来自 Excel、新闻来自网页、图表要用专门的工具生成。把这些来源整合成一份完整报告的工作,就是胶水的角色。

胶水代码的特点:

特性 说明
连接性 连接不同模块或服务
无业务逻辑 专注于数据传递和格式转换
轻量级 代码量少,但作用关键
适配性 处理不同接口之间的差异

Python 之所以被称为胶水语言,正是因为它特别擅长这种连接工作——可以调用 C 库、操作数据库、访问网络服务,把各种组件粘合在一起。

能连不造的开发哲学

Vibe Coding 把胶水编程提升到了核心位置。核心理念是:能抄不写,能连不造,能复用不原创

传统编程鼓励从零实现功能。但在 AI 时代,更高效的方法是组合现有组件。原因有三:

减少幻觉风险:AI 在生成全新代码时可能出错。但如果只是调用经过验证的现有库或服务,出错概率大大降低。

降低复杂性:每个被调用的组件都是久经考验的成熟代码,有完善的文档和社区支持。

提高效率:与其让 AI 从头实现一个功能,不如让它找到并调用合适的现有工具。

维度 传统编程 胶水编程
代码来源 从零编写 组合现有组件
技能要求 精通编程语言 理解系统架构和接口
开发速度 较慢 快速
维护成本 需维护全部代码 只维护连接逻辑
风险控制 可能引入新 bug 使用经过验证的组件

MCP 协议初步介绍

MCP 架构示意图

MCP(Model Context Protocol,模型上下文协议)是 Anthropic 推出的开放协议,为 AI 应用与外部工具、数据源的集成提供了标准化接口。

在 MCP 出现之前,如果想让 AI 调用外部工具,需要为每个工具编写自定义的集成代码。有了 MCP,这种情况变成了统一协议、标准化接口的方式。MCP 就像 AI 系统的万能胶水——一个统一的协议,让 AI 能够安全、高效地访问各种外部资源。

MCP 的三个核心组件:

组件 功能 举例
工具(Tools) 执行具体操作 搜索网页、读写文件
资源(Resources) 访问外部信息 数据库查询、API 调用
提示(Prompts) 管理对话流程 预定义的交互模板

第 7 章「工具使用」会详细讲解 MCP 协议的架构、Server 开发和实战应用。这里只需要理解核心概念:与其让 AI 从头实现功能,不如让它连接已有的成熟服务。

模块化思维

胶水编程背后是模块化思维。把系统拆分成独立的模块,每个模块执行特定功能,通过标准接口通信。

模块化的核心原则:

  • 独立性:每个模块可以独立开发和测试
  • 互操作性:模块之间通过标准接口通信
  • 可重用性:模块可在不同项目中复用
  • 可替换性:可以用更好的模块替换现有模块

用投资分析来类比:你不需要自己写爬虫抓取财报数据,可以用 Wind 或 Choice 的 API;不需要自己实现情感分析算法,可以调用现成的 NLP 服务;不需要自己设计报表模板,可以用专业的可视化工具。你的工作是把这些模块组合起来,形成有价值的分析流程。

金融场景:舆情分析的胶水架构

假设你要构建一个金融舆情分析系统。传统做法是从零实现每个功能。胶水编程的思路是组合现有组件:

金融舆情分析系统三层架构

你的工作不是实现每个模块的内部逻辑,而是设计整体架构、选择合适的组件、编写连接它们的胶水代码。这样既能快速构建系统,又能保证各模块的可靠性。