1、按照是否需要编译进行分类:编译型语言,解释型语言,混合型语言。
1.1、编译型语言:需要将源代码编译成机器码,再由机器运行机器码。例如:C,C++
优点:只需编译一次,运行速度快,执行效率高;
缺点:每次修改都需要重新编译,只能在兼容的操作系统上运行,不方便移植。
1.2、解释型语言:源代码在运行时通过解释器进行翻译,不需要提前进行编译。例如:Python,JavaScript
优点:只有要解释环境,就可以在不同的操作系统上运行,可移植性好。可以在解释时进行修改;
缺点:依赖解释环境,相对编译型语言来说运行较慢。
1.3、混合型语言:源代码需要编译,编译后需要解析。例如:Java(源代码先编译成字节码,运行时,由Java虚拟机将字节码解释生成机器码),C#(源代码编译成中间码,运行时,中间码由.NET平台解释生成机器码,.NET平台提供了中间语言运行库运行中间码)。