Skip to content

附录 B:与其他语言对照

概念RustGoJavaPython
空值Option<T>多返回/nilOptional/nullableNone
错误Result<T,E>error 多返回异常异常
并发线程 + asyncgoroutine线程/虚拟线程asyncio/线程
包管理cargogo modmaven/gradlepip/uv/poetry
接口TraitinterfaceinterfaceProtocol
泛型类型提示
GC无(所有权)
默认不可变

从其他语言迁移提示

  • 从 Go 来:少用「到处共享指针」思维;错误更枚举化;async 不是 goroutine。
  • 从 Java 来:没有传统继承树;组合 + Trait;没有隐式 null。
  • 从 Python 来:类型与所有权是强制的;先过编译器再谈动态灵活。
  • 从 C++ 来:默认更安全;RAII 很像;模板错误信息通常更友好(但仍可能长)。