• 编程语言的分类


    一、编程语言的分类


    • 机器语言
    • 汇编语言
    • 高级语言

    越往后,执行效率越低,开发的效率越高

    二、高级语言的分类


    1、编译型语言和解释型语言

    区别:

    • 程序执行之前先编译成机器码。
    • 程序执行时,边运行边解释成机器码。

    拓展:混合型语言:在编译的时候不是直接编译成机器码而是中间码。

    拓展:JIT(即时编译),它是动态编译的一种,结合了传统的提前编译(AOT) 和解释,即在程序执行时编译而不是在执行前。

    2、静 / 动

    (1)静态语言和动态语言

    运行时可以改变其结构的语言(例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。)

    (2)强类型语言和弱类型语言

    区别:

    • 一个变量定义时需指定数据类型,之后不可变,只能接受相同数据类型的值(除非涉及自动类型转换和强制类型转换)
    • 一个变量定义时无需指定数据类型,可以接受任何数据类型的值
    (3)静态类型语言和动态类型语言

    区别:

    • 编译器在 compile time 执行 类型检查
    • 编译器在 runtime 执行 类型检查

    3、范式

    (1)面向过程语言和面向对象语言
    (2)命令式语言、函数式语言、逻辑式语言
    (3)命令式编程和声明式编程
    • 命令式编程 Imperative programming
    • 声明式编程 Declarative programming
    (4)结构化编程和非结构化编程

    结构化编程(Structured programming)采用子程序、块结构、for循环以及while循环等结构,来取代传统的 goto。

    (5)流程驱动编程对比事件驱动编程
    (6)总结

    现在的高级编程语言大多都是支持多范式设计的。

    三、高级语言的 TOP 榜


    https://www.tiobe.com/tiobe-index/

    四、其他别称


    1、脚本语言

    脚本语言(scripting language)也是一种编程语言。

    它设计的初衷,往是作为一种临时的“补丁”。它的设计者并没有考虑把它作为一种“通用程序语言”,没有考虑用它构建大型的软件。所以一般来说功能较弱,会有坑。

    一般有以下特征:

    • 属于编译型语言
    • 简单、易学、易用

    2、胶水语言

    胶水语言(glue language)是用来连接软件组件的程序设计语言

    通常是脚本语言

  • 相关阅读:
    【[SDOI2016]排列计数】
    newcoder NOIP提高组模拟赛C题——保护
    【[JLOI2014]松鼠的新家】
    【[USACO08NOV]奶牛混合起来Mixed Up Cows】
    【[USACO13NOV]没有找零No Change】
    【[SHOI2009]会场预约】
    【[USACO12FEB]附近的牛Nearby Cows】
    UVA11987 【Almost Union-Find】
    基于递归的BFS(Level-order)
    遍历二叉树
  • 原文地址:https://www.cnblogs.com/xjnotxj/p/12964695.html
Copyright © 2020-2023  润新知