本文将以编译器、编辑器和集成开发环境为主线,为大家科普一些日常开发中经常会涉及到的一些知识和概念,帮助大家更好的巩固和学习。
编译器
编译器,即Compiler,是一种计算机程序,其主要作用便是将由高级语言编写的源程序翻译成机器所能理解的低级语言。
首先,先简单为大家科普下计算机学科中常用的三门语言。
- 机器语言
机器语言,即Machine Language,是指机器能直接识别的程序语言或指令代码,无需经过编译,每一位操作码在计算机内部都有相应的电路来完成它。由0、1所组成的二进制表示,对应电路上的高、低电平。
- 汇编语言
汇编语言,即Assembly Language,是指任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。
- 高级语言
高级语言,即High-level Programming Language,是一种独立于机器,面向过程或对象的语言。高级语言是参照数学语言而设计的近似于日常会话的语言,便于人们阅读、理解和维护。
此处之外,大家可能经常会涉及的两个关于语言的名称便是静态语言和动态语言。
- 静态语言
静态语言,是在编译时变量的数据类型即可确定的语言,大多数静态类型语言要求在使用变量之前必须声明数据类型,如C/C++、Java等。
- 动态语言
动态语言,是指在运行时确定数据类型的语言。变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型,如Python和PHP等。
总而言之,静态语言的优势便是调试方便,代码规范,缺点是代码不够简洁(需要明确定义);与之相反,动态语言的代码简洁,易于阅读和理解,但劣势便是当命名不规范时不利于理解且调试不方便。