第47课 · 效率工具编程语言的选择
本节要点
- AI 时代选语言,标准彻底变了:以前看语法好不好学,现在看 AI 写对率高不高、测试快不快、报错准不准
- 你不用学这些语言:了解它们各有什么特点就行,写代码的事交给 AI
- TypeScript —— 做网页工具的第一选择:AI 写对率最高,前端后端通吃,课程网站、MCP 工具都用它
- Python —— 数据处理最强:AI 训练数据最多,修 bug 最擅长,生态最好("吊包侠")
- Go / Rust —— 高性能场景才需要:一般审计/财务的效率工具基本用不上
- 前端 vs 后端:前端是「门店展示」(UI 界面),后端是「后厨加工」(数据处理),两者分工合作
- 和 AI 聊方案时,把真实需求说清楚:用途、场景、使用人数——信息越多,AI 给的选择越贴近
1. 为什么要关心编程语言?
前面我们做了不少效率工具和 Skill——合并 Excel、处理 Word 文档、生成流程图、做课程网站。回过头来你会发现,做每个工具之前都得选一个「用什么语言写」。
效率工具的好处很明显:
- 不依赖 AI:做完了自己就能跑,不用每次打开 Claude Code 重新对话
- 不消耗 token:跑一次就是跑一次,不用每次烧钱
- 可以发给别人用:同事也能用,不需要他们装 AI 工具
但问题来了——这么多编程语言,到底选哪个?
以前的人学编程,选语言主要看语法好不好学。比如 Python 像自然语言,C++ 偏底层比较难。但 AI 出现之后,这个标准变了——你不用亲自写代码,AI 帮你写。所以「语法好不好学」不再是关键问题,真正要关心的是:
💡 关键认知:AI 写代码,你来审查。选语言的标准变成了——AI 用这个语言写代码,写对的概率有多高?报错信息好不好懂?测试跑得快不快?
2. 选语言的标准:AI 时代 vs 以前
| 维度 | 以前的标准 | AI 时代的标准 |
|---|---|---|
| 学习门槛 | 语法好不好学 | AI 写对率高不高 |
| 生态 | 第三方库多不多 | 测试跑得快不快 |
| 性能 | 执行效率 | 编译报错准不准 |
| 招聘 | 好不好招人 | 代码人类好不好审查 |
以前的思路是「我要学这门语言」,现在的思路是「我要让 AI 用这门语言干活」。
有观点认为:手写代码的时代已经过去了,选语言只需要看两件事——① AI 能不能高质量写出这种语言的代码?② 作为人类的你,能不能一眼看懂它写的代码?
这背后是 AI 写代码的核心循环:
AI 写代码 → 跑测试看对不对 → 报错了读错误信息 → AI 改代码 → 再跑测试
↑_________________________________↓
循环越快越好这个循环的三个关键:
- 写得对不对:AI 对某门语言的训练数据越多,越不容易写出 bug
- 报错准不准:编译器/运行时报错越清晰,AI 改得越快
- 测试快不快:跑一遍测试只要 1-2 秒,和要等几十秒,体验天差地别
3. 前端 vs 后端:软件开发的分工
在聊具体语言之前,先搞清楚一组概念——前端和后端。
用你熟悉的东西打比方:
🏪 前端 = 餐厅的门店:你走进去看到的一切——桌子、菜单、装修、服务员。这是用户直接接触的部分。
🔪 后端 = 餐厅的后厨:你看不到的——切菜、炒菜、洗碗、库存管理。这是真正干活的地方。
翻译成审计术语:
📊 前端 = 审计底稿的展示层:你在 Excel 里看到的表格、颜色、格式、筛选下拉框——这些是你眼睛看到的。
🧮 后端 = 审计底稿的数据逻辑层:公式计算、勾稽关系、数据汇总——这些是你看不到但真正在做事的。
为什么要分开? 因为软件开发是分工的——有人专门做界面(前端),有人专门做数据处理(后端)。做效率工具虽然一个人全包,但 AI 帮你写代码时,你至少要知道「这个功能属于前端还是后端」。
简单判断:
- 用户能看到、点击的 → 前端
- 数据计算、存储、逻辑处理 → 后端
4. 各语言一览:AI 时代的四门语言
下面介绍做效率工具最常用的四门语言。记住一个原则:你不用学它们,你只需要了解它们各擅长什么。
4.1 TypeScript(TS)—— 做网页工具的第一选择
一句话总结:AI 写对率最高的语言,前端后端都能用,做网页效率工具首选。
为什么 AI 擅长写 TypeScript?
TypeScript 是 JavaScript 的「加类型版」。它在 JavaScript 基础上加了类型标注——比如明确告诉 AI「这个变量是数字,不是文字」。对 AI 来说,类型标注就像路标,能大幅降低写错代码的概率。
据 GitHub 2025 年 Octoverse 报告,TypeScript 在 2025 年 8 月首次超越 Python 和 JavaScript,成为 GitHub 上使用人数最多的编程语言——月活跃贡献者达到 263.6 万,一年增长了 66%。
TypeScript 之父 Anders Hejlsberg 在采访中说得直白:「AI 写某种语言代码的能力,跟它见过多少这种语言的代码成正比。AI 就是一个大型的『复读机』,带一点外推能力。它见过大量的 JavaScript、Python 和 TypeScript,所以写这些语言特别拿手。」
TypeScript 能做什么?
- 网页工具:课程网站、文档站、在线计算器、数据看板
- AI 工具接口(MCP Server):让 AI 工具连接外部服务
- 全栈开发:同一个语言写前端 + 后端(Next.js 框架)
举例:我们的课程网站(你正在看的这个)就是 TypeScript 写的。陈版主的 BBS 检索问答工具也是。任何你想做成网页版给同事用的效率工具,TypeScript 都是首选。
实际场景:你想把一组审计调整分录做成一个网页工具,同事打开浏览器就能用、能筛选能排序——TypeScript 是最合适的。
4.2 Python —— 数据处理最强、「吊包侠」
一句话总结:AI 训练数据最多的语言,修 bug 通过率最高,生态好到几乎「什么都能找到现成的包」。
为什么 AI 擅长写 Python?
Python 是 AI 和机器学习领域的「普通话」,几乎所有的 AI 训练数据都有大量 Python 代码。根据 Multi-SWE-bench(一个评测 AI 修 bug 能力的多语言基准,已被 NeurIPS 2025 收录),Python 的修 bug 通过率高达 52.2%,远超其他语言。
Python 的核心优势:生态
Python 有个外号叫「吊包侠」——意思是你要做什么功能,基本都能找到一个现成的第三方包(package),AI 直接 pip install 装上就能用:
- 批量处理 Excel →
pandas、openpyxl - 提取 PDF 内容 →
pdfplumber、camelot - 自动操作 Word →
python-docx - 发送邮件 →
smtplib - 生成图表 →
matplotlib - 做简单网页 →
streamlit(数亿次下载量)
Python 能做什么?
- 数据处理:批量合并 Excel、清洗数据、提取 PDF 中的表格
- 自动化脚本:定时发送报告、自动整理文件夹
- 简单的数据网页:用 Streamlit 几行代码就能做出一个数据看板
举例:你每个月要合并 30 个子公司发来的 Excel 利润表,以前手动复制粘贴要大半天。用 Python 写个脚本,跑一次 3 秒搞定。
实际场景:批量处理审计底稿、自动提取合同关键信息、生成汇总表——Python 是数据分析类效率工具的最佳选择。
4.3 Go —— 单文件工具,高并发执行
一句话总结:打包成一个独立文件就能跑,执行效率高,但审计场景基本用不上。
Go 的特点:
- 打包成单文件:一个约 15MB 的
.exe文件就能跑,不需要装任何依赖 - 编译极快:1-2 秒编译完,AI 的「写→测试→改」循环极快
- 十多年来没有破坏性变更:Go 从 2012 年发布 Go 1.0 起就承诺了兼容性,老代码在新版本上照样跑
- 高并发:天生适合同时处理大量任务
什么时候需要 Go?
基本不需要。除非你要做一个同时被几百人使用、对速度有极致要求的工具。
实际场景:你用不到 Go。即使你做了一个给全所 200 人用的效率工具,Python 或者 TypeScript 的网页方案也完全够用。
4.4 Rust —— 极致性能,编译器报错最精准
一句话总结:执行效率最高、打包体积最小、报错信息最友好,但学习曲线陡峭。
Rust 的特点:
- 编译器报错极其精准:不只告诉你哪里错了,还会建议你怎么改——这对 AI 来说非常友好
- 打包体积极小:一个桌面应用可以做到 3-40MB(相比之下 Electron 同类应用 120-250MB)
- WebAssembly 支持成熟:可以把代码编译成在浏览器里跑的高性能模块
Rust 的缺点:
Rust 有个独特的概念叫「借用检查器」(borrow checker),它要求在编译时就搞清楚「谁拥有数据、谁能改数据」。这个机制让 AI 经常陷入死循环——一直在修编译错误,永远修不完。
什么时候需要 Rust?
基本不需要。除非你对性能有极致追求,或者想做极轻量的桌面应用(用 Tauri 框架)。
实际场景:你用不到 Rust。
5. 桌面软件怎么选?
如果你不想做网页工具,而是想做一个「双击就能打开」的桌面软件,选项如下:
| 方案 | 本质 | 包体大小 | 适合场景 |
|---|---|---|---|
| Electron | 把网页打包成桌面软件 | 120-250MB | 想要好看的界面、跨平台 |
| Tauri | Electron 的轻量版 | 3-40MB | 想要小包体、好性能 |
| PyQt | Python 配套的界面库 | 中等 | 简单工具,界面要求不高 |
| C# | Windows 原生方案 | 中等 | 只在 Windows 用 |
最常用的是 Electron(好看、跨平台,但包体大)和 Tauri(轻量、快速,但对 Rust 有要求)。对审计场景来说,如果只是做个简单的计算器或格式转换工具,PyQt 或者干脆做成网页工具往往就够了——不需要装软件,浏览器打开就能用。
6. 决策一张图
你要做什么?
│
├── 🖥️ 做一个网页工具(同事浏览器打开就能用)
│ └── → TypeScript(首选)
│
├── 📊 批量处理数据(Excel/PDF/自动化脚本)
│ └── → Python(最强)
│
├── 🖱️ 做一个桌面软件(双击打开用)
│ ├── 要好看、跨平台 → Electron(TypeScript)
│ └── 要轻量、快 → Tauri(Rust)
│
├── ⚡ 需要高并发、极致性能
│ └── → Go(一般不需要)
│
└── ⚙️ 极致性能+极轻打包
└── → Rust(基本不需要)最常用的组合
真实做项目时,语言不是单一选择,而是组合:
| 角色 | 语言 | 做什么 |
|---|---|---|
| 🎯 主力 | TypeScript(Next.js) | 网页前端 + 后端接口,全栈 |
| 🔧 辅助 | Python | 数据处理、批量脚本、自动化 |
| ⚡ 特殊 | Go / Rust | 高性能场景,基本用不上 |
审计/财务场景的推荐组合:
- 做网页工具 → TypeScript(课程网站同款方案)
- 做数据脚本 → Python(Excel 合并、PDF 提取、自动化报告)
- 两个一起用也没问题:前端页面用 TypeScript,背后数据处理用 Python
7. 怎么跟 AI 聊方案
最后讲一个很多人忽视的技巧:你跟 AI 聊「帮我做 XX 工具」时,告诉它的不止是功能需求。
把你的真实场景说清楚,AI 才能帮你选对语言和方案。比如不要说「帮我做个数据处理工具」,而是说:
我是审计师,每个月要合并 30 家子公司的 Excel 利润表,生成一张汇总表发给合伙人。工具我自己用就行,不需要网页,能跑通就行。
信息越多,AI 给的选择越贴近你的场景。需要告诉 AI 的要素:
- 用途:具体解决什么问题
- 使用者:只有你用,还是发给同事、客户用
- 使用频率:每天用还是一个月一次
- 数据量:几张表还是几百张表
- 呈现形式:网页打开、双击 exe,还是命令行跑就行
⚠️ 常见问题
我不是程序员,这些我真的需要懂吗?
不需要「懂」。你只需要大概知道 TypeScript 做网页、Python 做数据——这个直觉就够了。选什么语言、怎么写代码,全部交给 AI。
如果你跟 AI 说「帮我做个工具」,AI 问「用什么语言?」,你回答「你觉得哪个合适就用哪个」——AI 自己会根据需求选。
TypeScript 和 JavaScript 什么关系?
TypeScript 是 JavaScript 的「加类型版」。打个比方:JavaScript 是白纸上写草稿,TypeScript 是带格子的信纸——更容易写得整齐。AI 在「带格子的纸」上写字准确率更高。
你做工具时不需要关心它们的区别,AI 会自动选。
Node.js 是什么?和 TypeScript 什么关系?
Node.js 是一个运行环境,它让 JavaScript/TypeScript 代码不在浏览器里也能跑。OpenCode、Claude Code 这些工具本身都依赖 Node.js 运行。你装这些工具的时候 Node.js 就已经装好了,不用额外管它。
Python 和 TypeScript 我该选哪个?
简单原则:
- 要做一个别人打开浏览器就能用的网页工具 → TypeScript
- 要批量处理数据、写自动化脚本 → Python
- 两者都要 → TypeScript 做界面 + Python 做数据处理,组合使用
Streamlit 是什么?
Streamlit 是一个 Python 库,让你用 Python 就能做出简单的数据网页。不用学前端,直接写 Python 就能生成一个带表格、图表的网页。对于「只想把数据分析结果快速展示出来」的场景特别方便。
关键收获
TIP
AI 时代选语言,标准彻底变了:不是你好不好学,是 AI 写得好不好。
四门语言一句话:
- TypeScript → 做网页工具
- Python → 处理数据
- Go → 高性能单文件(基本用不上)
- Rust → 极致性能(基本用不上)
你不需要学任何一门——但要能跟 AI 说出你在什么场景、解决什么问题、给谁用。信息越多,AI 帮你选得越准。
审计/财务场景的日常选择就是两个:做网页 → TypeScript,跑数据 → Python。
参考链接
- GitHub Octoverse 2025 报告(TypeScript 登顶 #1):https://octoverse.github.com/
- Multi-SWE-bench:多语言代码修 bug 基准:https://github.com/multi-swe-bench/multi-swe-bench
- ProgramBench:从零重建程序基准:https://github.com/facebookresearch/programbench
- TypeScript 之父 Anders Hejlsberg 专访(GitHub Blog):https://github.blog/developer-skills/programming-languages-and-frameworks/typescripts-rise-in-the-ai-era-insights-from-lead-architect-anders-hejlsberg/
- Tauri 官网(轻量桌面应用框架):https://tauri.app/
- Streamlit 官网(Python 数据网页):https://streamlit.io/