程序执行的两种方式
一、编译型:
编译型语言就是将源代码一次性转换成目标代码的过程
当程序员编写好一段代码之后,经过一个叫编译器的软件,
可以将源代码翻译成目标代码,也就是翻译成计算机可以直接执行的代码,
然后我们执行这段代码,他获取程序该有的输入,并产生输出结果
这就是编译过程
解释型:
解释型语言就是将源代码逐条转换成目标代码同时逐条运行的过程。
根据代码的行数,逐条地读取源代码的内容,并逐条地转换成目标代码
同时逐条运行源代码的过程,在这个过程中,读取源代码每行代码和程序输入。
这样的一个软件或程序我们叫解释器。
它通过运行源代码和程序的输入来获得程序的输出。
异同:
编译相当于一次性的翻译,我们将程序员编写的代码变成目标代码之后,我们就不再需要源代码,这样我们就可以对使用目标代码来运行程序。
而解释它是每次都需要源代码参与,才能够运行程序,它有点像英文中的实时的同声传译。
所以这两种不同的程序执行方式,就带来了不同的程序实现方式,我们根据程序不同的实现方式,我们将编程语言分为两类:
一类叫静态语言,它是使用编译执行的编程语言,比如C/C++语言、java语言。
另外还有一种语言,叫做脚本语言,它使用解释执行来完成程序设计,比如Python语言、Javascript语言、PHP语言。
静态语言的优势:编译器一次性生成目标代码,优化更充分,程序运行速度 更快。
脚本语言的优势:执行程序时需要源代码,维护更灵活,可以跨多个操作系统平台。