⌨️ 第二章 编程语言都有什么不同
📄 一句话概括

【学哪门语言】的答案是【先问四个问题】:跑在哪、多大工程、团队会什么、生态有什么——没有最好的语言,只有场景对了的语言;榜单是参照物,不是判决书。

📝 本节和前面几节的关系

前九节把【语言为什么不同】讲完(翻译方式、抽象层级、范式、生态与 JIT),本节反过来回答【所以怎么选】——前面所有的差异项,到这里全部变成选择参数。

一、选语言的四个问题

① 跑在哪(执行环境)? - 浏览器 → JavaScript/TypeScript(别无选择,回收 2-8) - Windows/macOS 桌面 → C#、C++、Electron 系 - 服务器后端 → Java、C#、Go、Python、PHP、Node.js - 手机 → Android(Kotlin/Java)、iOS(Swift) - 单片机/硬件 → C/C++、MicroPython(树莓派 Pico,回收 16 课第九章) - 数据与 AI → Python(回收 2-7 的生态胜利)

② 多大规模(开发规模)? 百行脚本——Python/Shell 怎么快怎么来;百万行、几十人、十年维护——需要静态类型、清晰接口与工程化工具链(Java/C#/TS/C++),回收 2-8 中【TS 在大型项目里几乎全面胜出】的案例。

③ 团队会什么? 招聘市场、存量代码、成员背景都是硬约束——公司全栈 Java 就别为了时髦上小众语言;个人学习则相反, learning curve 与就业面优先。

④ 生态有什么(库与社区)? 要做的功能八成别人做过——查查标准库与第三方仓库(PyPI/npm/Maven Central)的厚度,回收 2-7 里【自带电池】的尝鲜实验。

二、榜单怎么看:TIOBE 2026-09 快照

排名 语言 占比 一句话定位
1 Python 17.76% AI/数据/胶水的通用语
2 C 10.28% 嵌入式与内核的压舱石(2026 反超 C++)
3 C++ 8.67% 高性能与游戏
4 Java 7.54% 企业后端与 Android
5 C# 4.22% 微软系与 Unity
6 JavaScript 2.76% Web 前端唯一原生
7 Visual Basic 2.55% 存量企业应用与 Excel 宏文化
8 SQL 2.16% 数据库领域专用(回收 2-4 声明式)
9 R 1.69% 统计分析
10 Rust 1.34% 内存安全的新王(2026-07 首进前十)

三条读榜纪律:① TIOBE 反映【搜索与课程热度】,不等于【岗位数量】(PYPL 按教程搜索计,Java 在其中稳居第二);② 榜单波动以季度计,学了不会亏的都是前 20 的常客;③ Rust 的上升是【内存安全】叙事的胜利,选它之前先问自己的场景是否真的在 C/C++ 的痛处上。

三、两条心法

① 语言是轮子,问题是轴——先写清楚你要解决的问题(一段话),四个问题逐个过,答案会自己浮出来。顺序反了(先选语言再找问题)是新手最常见的浪费。

② 第二门语言比第一门便宜十倍——你已有 C++(静态、编译、手动内存)与 Python(动态、解释、自动内存)两极样本(16 课),2-3~2-9 的每张对照表都在证明:学的是范式与思想,语法只是方言。教材这一章的价值正在于此——把【比较】本身变成能力。

四、动手 Demo:给自己做一张选择卡

SCENES = {
    "写个自动化小脚本": "Python / Shell",
    "进 Web 前端": "JavaScript / TypeScript",
    "做手机 App(安卓)": "Kotlin / Java",
    "写游戏(大型)": "C++(引擎) / C#(Unity)",
    "搞数据与 AI": "Python",
    "写操作系统/驱动": "C / Rust",
    "进企业后端": "Java / C# / Go",
    "操控树莓派": "Python(gpiozero) / C",
}

for scene, langs in SCENES.items():
    print(f"{scene} -> {langs}")

看到什么算成功:八行【场景 → 语言】映射打印。读结果:这张卡不必背——遇到真实需求时按四个问题过一遍,再对照它修正即可。你身上已有的 C++/Java/Python 三门武功,恰好覆盖了这张卡的一半场景。

五、30 秒实验

打开招聘网站,搜【Python】与【C++】各 30 秒,只看两件事:岗位数量与岗位描述里的行业词(金融量化?游戏引擎?AI?)。榜单是抽象数字,招聘页是 concrete 的供需现场——两者对照着看,【学什么】的焦虑会消散大半。

六、常见误区

  1. 【我要先找到【最好的语言】再开始学】——错。前二十名的语言没有【错选】;从任何一个常客开始,第二门语言都会便宜十倍。
  2. 【学新语言要从零开始】——错。范式与概念(变量、循环、函数、类)全部迁移,换语言主要是换语法与生态(本课第二章整章都在讲这个)。
  3. 【榜一就是就业答案】——错。TIOBE 第 7 名 Visual Basic 的岗位远少于占比更高的 Python;榜单、招聘、行业三张地图要叠着看。
自测三问(点开对答案) 1. **选语言的四个问题是什么?** 答:跑在哪(执行环境)、多大规模、团队会什么、生态有什么。 2. **TIOBE 2026-09 前十有什么值得注意的新变化?** 答:C 反超 C++ 居第 2;Rust 首次进入前十(内存安全叙事);Python 以 17.76% 遥遥领先。 3. **为什么说【第二门语言比第一门便宜十倍】?** 答:范式与概念全部迁移,新语言主要学语法与生态;已有两极样本(编译静态/解释动态)后更是如此。

相关笔记