当前位置:网站首页>总结:不同语言比较总结
总结:不同语言比较总结
2022-08-02 15:54:00 【小魏的博客】
一、编译型语言和解释型语言
1、编译型语言
编译型语言在执行之前要先经过编译过程,编译成为一个可执行的机器语言的文件,比如exe。因为翻译只做一遍,以后都不需要翻译,所以执行效率高。
优点:编译器一般会有预编译的过程对代码进行优化,因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行
缺点:编译之后如果需要修改就需要整个模块重新编译。编译时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件
代表语言:C,C艹,Pascal,Object-C,swift等
2、解释型语言
解释性语言编写的程序不进行预先编译,以文本方式存储程序代码。执行时才翻译执行。程序每执行一次就要翻译一遍。
优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护
缺点:每次运行都要解释一遍,性能上不如编译型语言
代表语言:javaScript,Python,Erlang,PHP,Perl,Ruby
二、静态语言与动态语言
1、静态语言(强类型语言)
是在编译时确定变量的数据类型,运行期间不可以改变其结构,即运行前可确定的语言,多数静态类型语言要求在使用变量之前必须声明数据类型。 例如:C++、Java、Delphi、C#等。
2、动态语言(弱类型语言)
动态语言是在运行时确定数据类型与结构的语言。变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型。 例如PHP/Ruby/Python/Perl/SQL/JavaScript/Unix Shell等等。
3、静态语言的优缺点
优点:
1.避免程序运行时发生变量类型相关的错误
2.先前明确了变量的类型,编译器可以针对这些信息对程序做出一些优化,从而提高程序执行的速度
缺点:
1.撸码的时候,需要格外注意变量的类型
2.过多的类型声明会增加更多的代码
4、动态类型语言的优缺点
优点:给实际的编码带来了很大的灵活性,我们只关注对象的行为,而不关注对象本身
缺点:代码运行期间有可能会发生与类型相关的错误
三、
边栏推荐
猜你喜欢
随机推荐
机械臂速成小指南(十八):圆弧规划
DevOps开发工具对比
JZ42 连续子数组的最大和
面试官:可以谈谈乐观锁和悲观锁吗
软件技术功能开发思路
tiup mirror sign
先睹为快!界面控件DevExpress WPF这些功能即将发布
想要白嫖正则是吧?这一次给你个够!
互联网刚需岗位 前景一片大好?
不平衡之钥: 重加权法知几何
NC22 合并两个有序的数组
QueryWrapper method explained
带你了解MySQL数据库
JZ11 旋转数组的最小数字
一文搞懂│php 中的 DI 依赖注入
我的创作纪念日
CefSharp practical demonstration
【[USACO06NOV]Corn Fields G】【状压DP】
【Transformer专题】一、Attention is All You Need(Transformer)
JZ71 跳台阶扩展问题