CS-language

1. 静态类型 vs. 动态类型

静态类型(Statically Typed)

动态类型(Dynamically Typed)

对比总结

特性 静态类型 动态类型
类型检查 编译时检查 运行时检查
性能 更高(编译器优化) 稍低(运行时解析)
灵活性 低(类型固定) 高(随时改变类型)
代表语言 C/C++/Java/Go/Rust Python/JS/Ruby/PHP

2. 编译型 vs. 解释型

编译型语言(Compiled Languages)

解释型语言(Interpreted Languages)

混合型(JIT 编译)

对比总结

特性 编译型 解释型 JIT(混合型)
执行方式 直接运行机器码 逐行解释执行 先解释,后编译优化
速度 最快 较慢 中等(优化后接近编译型)
跨平台 需重新编译 直接运行(依赖解释器) 依赖虚拟机(如JVM)
代表语言 C/C++/Go/Rust Python/JS/PHP Java/C#/JavaScript

3. 脚本语言(Scripting Languages)

定义

常见脚本语言

语言 主要用途
JavaScript 网页交互(浏览器)、后端(Node.js)
Python 数据分析、自动化脚本、Web后端
PHP 传统Web开发(WordPress)
Lua 游戏脚本(魔兽世界)、嵌入式扩展
Ruby Web开发(Ruby on Rails)

脚本语言 vs. 系统编程语言

特性 脚本语言(Python/JS) 系统语言(C++/Rust)
执行方式 解释执行 编译成机器码
性能 较慢 极快
用途 自动化、Web、数据分析 操作系统、游戏引擎、高频交易

总结

  1. 静态类型 vs. 动态类型

    • 静态:类型固定,编译检查(C++/Java)。
    • 动态:类型可变,灵活但易出错(Python/JS)。
  2. 编译型 vs. 解释型

    • 编译型:直接运行机器码(C++/Go)。
    • 解释型:逐行执行(Python/JS)。
    • JIT:混合优化(Java/JS V8)。
  3. 脚本语言

    • 解释型,用于自动化、Web(Python/JS/PHP)。