强曰为道
与天地相似,故不违。知周乎万物,而道济天下,故不过。旁行而不流,乐天知命,故不忧.
文档目录

Nim 完全指南

Nim 完全指南

Nim 是一门高效、优雅、表达力强的系统编程语言,兼具 Python 的简洁与 C 的性能。

为什么选择 Nim?

特性 说明
高性能 编译为 C/C++/JavaScript,运行速度媲美 C
优雅语法 缩进式语法,类似 Python,简洁易读
内存管理 可选 ARC/ORC,无 GC 停顿
元编程 强大的宏系统,编译期代码执行
跨平台 支持 Windows/Linux/macOS,可交叉编译
多后端 C、C++、JavaScript、Objective-C
FFI 友好 无缝调用 C/C++ 库

Nim 适用场景

  • 系统编程与命令行工具
  • Web 后端与 API 服务
  • 游戏开发与图形应用
  • 嵌入式与 IoT
  • 科学计算与数据处理
  • 跨语言绑定与胶水代码

课程目录

本教程共 25 章,从入门到进阶,循序渐进:

第一部分:基础入门

章节 标题 核心内容
01 Nim 简介与设计哲学 语言特性、编译目标、适用场景
02 安装与环境配置 choosenim、nimble、IDE 配置
03 第一个程序 编译运行、项目结构、nim 脚本
04 变量与类型系统 let/var/const、基本类型、类型转换
05 运算符 算术、逻辑、位运算、自定义运算符
06 控制流 if/case/for/while/break/continue

第二部分:核心编程

章节 标题 核心内容
07 函数与过程 多返回值、泛型函数、闭包、方法
08 数据结构 序列、集合、表、元组
09 字符串处理 字符串插值、格式化、Unicode
10 面向对象编程 对象、继承、方法、多态
11 泛型编程 泛型类型、概念(concepts)、约束
12 元编程 模板、编译期函数、AST 操作

第三部分:工程实践

章节 标题 核心内容
13 错误处理 异常、Result 类型、Option 类型
14 模块与包管理 import/export、nimble 包管理
15 文件与系统 I/O 文件操作、流、系统调用
16 并发编程 线程、异步、Channel、锁
17 外部函数接口 C/C++ 绑定、Python 绑定

第四部分:应用开发

章节 标题 核心内容
18 Web 开发 Jester、Prologue、HTTPbeast
19 测试与质量 unittest、nimcheck、属性测试
20 容器化部署 多阶段构建、Docker 最佳实践
21 性能优化 编译优化、内存管理、Profiling

第五部分:进阶与实战

章节 标题 核心内容
22 C 后端深入 生成的 C 代码、与 C 库集成
23 JavaScript 后端 Node.js、浏览器、DOM 操作
24 最佳实践 代码风格、命名规范、生产规范
25 实战项目 CLI 工具、Web API、系统工具

学习路线建议

基础入门 (1-6)  →  核心编程 (7-12)  →  工程实践 (13-17)  →  应用开发 (18-21)  →  进阶实战 (22-25)
    ↓                    ↓                    ↓                    ↓                    ↓
  语法基础           语言特性            工程能力            应用开发            深度理解

前置要求

  • 基本的编程经验(任意语言均可)
  • 了解命令行基础操作
  • 对编译型语言有初步认识(非必须)

环境准备

# 安装 Nim(Linux/macOS)
curl https://nim-lang.org/choosenim/init.sh -sSf | sh

# 验证安装
nim --version
nimble --version

约定

  • 🔔 提示:实用技巧和补充说明
  • ⚠️ 注意:容易出错或需要特别关注的地方
  • 💡 扩展:进阶内容和延伸阅读
  • 🏢 场景:实际业务中的应用示例
  • 📖 阅读:推荐阅读的文档和资源