参考资料
notes
- “类型系统”的四个主要范式:
- 静态类型(Static Typing)
- 动态类型(Dynamic Typing)
- 强类型(Strong Typing)
- 弱类型(Weak Typing)
- 在静态类型系统中,变量的类型在编译时已经确定,并且在程序运行期间无法更改。
- 静态类型系统有助于在开发过程中发现类型错误。
- 静态类型语言 C++,Java,Rust 和 TypeScript
- 在动态类型系统中,变量的类型在运行时确定,并且在程序运行期间可能会改变。
- 动态类型使得编程更灵活,但可能会导致运行时类型错误。
- 动态类型语言 JavaScript,Python,Ruby 和 PHP
- 在强类型系统中,一旦变量被赋予了某种类型,就不能用作其他类型(除非进行显式转换)。
- 强类型语言帮助保护了数据的完整性,防止了可能的类型错误。
- 强类型语言 Java,C++,Python 和 Rust
- 在弱类型系统中,变量可以被自由地用作其他类型,无需显式转换。
- 弱类型使编程更灵活,但也可能导致类型错误或其他预期之外的行为。
- 弱类型语言 JavaScript 和 PHP
- 这四种范式并不是互斥的,许多语言都在这些范式之间做出了不同的折衷和平衡。例如,TypeScript 是静态和强类型的,但它是 JavaScript(动态和弱类型)的超集。