FP 对于工作程序员:为什么 null 不好?

主要观点:Null 很危险,这一观点不易被很多人接受,不同语言对 null 的处理方式不同,如 C/C++中访问空指针成员可能继续运行但产生奇怪结果导致难以追踪 bug,Java 会使程序在访问空指针时立即失败以方便追踪 bug,可让编译器禁止使用 null 但会带来一些问题; newer 语言如 Scala 提供 Option 类型来表示可能无值的情况,通过 Option 类型的方法可更安全地处理值,使用 Option 后能减少代码量和 bug 数量,且类似 Option 的概念在 Java、C#、C++中也开始出现。
关键信息:C/C++中 null 指针访问的问题,Java 对 null 的处理,Scala 的 Option 类型及方法,Option 类型在不同语言中的体现。
重要细节:在 C/C++中访问空指针成员的情况及后果,Java 程序在访问空指针时的表现,Scala 中 Option 类型的定义及示例代码,Option 类型的各种方法的作用及使用方式,如 getOrElse、filter、map、flatMap 等在代码中的应用,以及在不同语言中类似 Option 概念的示例代码等。

阅读 7
0 条评论