• 静态语言和动态语言的区别


    动态语言与静态语言的区别

    静态语言(强类型语言)

    • 与动态语言相对应的,运行时结构不可变的语言就是静态语言。如Java、C、C++。
    • Java不是动态语言,但Java可以称之为“准动态语言"。即Java有一定的动态性,我们可以利用反射机制获得类似动态语言的特性。Java的动态性让编程的时候更加灵活。

    动态语言(弱类型语言)

    • 是一类在运行时可以改变其结构的语言:∶例如新的函数,对象,甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。通俗点说就是在运行时代码可以根据某些条件改变自身结构。
    • 主要的动态语言有:Object-C、C#、JavaScript、PHP、Python等。

    强类型定义语言

    强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。

    弱类型定义语言

    数据类型可以被忽略的语言。它与强类型定义语言相反,一个变量可以赋不同数据类型的值。强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。

    静态语言的优势

    • 由于类型的强制声明,使得IDE有很强的代码感知能力,故,在实现复杂的业务逻辑、开发大型商业系统、以及那些生命周期很长的应
      用中,依托IDE对系统的开发很有保障;
    • 由于静态语言相对比较封闭,使得第三方开发包对代码的侵害性可以降到最低;

    动态语言的优势

    • 思维不受束缚,可以任意发挥,把更多的精力放在产品本身上;
    • 集中思考业务逻辑实现,思考过程即实现过程;
  • 相关阅读:
    MIT 6.S081学习笔记(第〇章)
    SQL之exists、not exists
    详解IP安全:IPSec协议簇 | AH协议 | ESP协议 | IKE协议
    欧拉公式的证明
    高阶数据结构学习之并查集
    vue3 传值
    程序员编程抢挂九价HPV疫苗号,牟利40余万后被警方抓获
    vue3 项目搭建教程整理
    GPU高性能面试-写一个ReduceKernel
    基于Python和mysql开发的今天吃什么微信小程序(源码+数据库+程序配置说明书+程序使用说明书)
  • 原文地址:https://blog.csdn.net/weixin_44057803/article/details/125891096