# 编程语言
通过同一个实际问题,理解 Rust、Go、Java、JavaScript、TypeScript、Kotlin、Python 与 C++ 的惯用写法,以及这些写法背后的设计取舍。
# 当前可读路径
下面四篇组成一条跨章节导读:从分支与输入校验进入行为抽象,再讨论保证由谁承担。列表顺序表示导读衔接,不表示完整课程中相邻的章节;各章其余正文从下方目录进入。
基础篇适合已经能识别变量、函数和基本类型的读者;报告输出篇会提前使用行为抽象与失败传播,篇首说明需要理解的范围。尚不熟悉这些概念时,可先看问题和关键差异,再按需阅读语言实现。
# 完整主题大纲
九个主题按“语法与类型 → 数据处理与建模 → 错误、抽象与并发 → 综合应用与设计分析”组织。各章目录列出全部文章;专门机制按实际用途选择语言,不把同一套语法机械铺到每个场景。
初学者可使用上下篇按章节顺序阅读;已有语言经验的读者可通过侧栏按问题定位到各章,或使用精选导读跳读。“相关阅读”继续连接前置知识与应用场景,顺读顺序不代表每篇都是下一篇的必要前置知识。
# 阅读约定
- 比较共同问题与预期行为,各语言不必采用相同代码结构。
- 基础主题覆盖八种语言;专有机制按实际价值展开,不强行补齐对照。
- JS 与 TS 的运行时逻辑相同时,共享实现说明,突出 TS 的类型差异;各语言主示例保留完整程序,便于独立阅读和复制运行,不以未闭合的签名替换片段代替实现。
- 示例区分完整程序、函数片段和替换片段;片段须说明文件名、保留部分、拼接顺序和运行入口,不能只写“添加 main 后调用”。
- 版本是本知识库选用的示例基线,不表示最新版本或最低支持版本。
- 示例优先使用标准库。引入第三方库时必须解释用途和运行条件。
- 代码后的“设计观察”是基于示例的分析,不等同于语言设计者的原话。
# 示例基线与验证
| 语言 | 选用基线 |
|---|---|
| Rust | edition 2021 |
| Go | Go 1.22 |
| Java | JDK 21 |
| JavaScript | ES2022,Node.js 环境 |
| TypeScript | TypeScript 5.x,strict,target ES2022 |
| Kotlin | Kotlin 1.9,JVM 环境 |
| Python | Python 3.11 |
| C++ | C++17 |
实际执行状态见 验证记录。本版不把阅读核对等同于运行验证;文章提供阅读内容,不代表全部语言通过验证。当前待整改项见 现状审查。
# 编写与维护
- 内容编写与维护规范:从选题、查证、实现到复核、发布的流程、验收门槛与证据要求。
- 实作文章模板:用于同题多语言的语法、类型、集合、建模等文章。
- 设计分析模板:用于基于已有示例讨论语言机制和工程取舍的文章。
- 验证记录:实际工具链、执行范围与未验证部分。
- 现状审查与整改清单:2026-10-17 的结构检查、抽样问题、实测反例与后续处理顺序。
模板是取舍提示,不是必须填满的栏目。实作文章先定义问题,再给关键差异、实现和调用方式;设计分析从具体变化出发,用示例证据支持判断。只有影响理解时才引入更复杂的抽象。
组织方式参考 Go by Example 的注释示例和 Rust by Example 的概念递进。这里的示例按跨语言问题重新编写。