0
点赞
收藏
分享

微信扫一扫

探索编程语言分支,我周围的语言有何不同?

醉东枫 2022-01-14 阅读 54

文章目录

静态类型语言、动态类型语言区别?

变量的类型,何时确定?

先看python

a = 32		//int
a = "你好"	//String

再看Java

int a = 32;
a = "你好";	//error

静态类型(静态类型检查)

  • 变量类型在编译时确定

Java

C++

C

Go

Rust

TypeScript(就是JavaScript的静态类型模式)

  • 静态类型编程语言能直接帮你解决很多问题(静态类型检查)

动态类型

  • 变量类型在运行时确定

python

JavaScript

PHP

Perl

  • 动态类型不太适合大型项目,因为无检查,非常不安全

内存管理

内存泄漏

C++Java/Python
内存管理程序员自己管理自动垃圾回收
虚拟机
性能高(C++:比例尺1)低 (Java比例尺:10)(Python比例尺:100)
开发效率
可移植性需要重新编译无需再编译
反编译容易
  • 关于某些网站偶尔进不去的问题,可能就是内存泄露后,自动重启服务器导致的

内存的两种分配方式

栈(Stack)

堆(Heap)

堆上内存的两种管理方式

  1. 程序员自己管理(C++,C)
  1. 自动垃圾回收(Java,Python,Go)

虚拟机(Java,Python)

  • 一次编译,到处运行 write one,run anywhere!

  • VMvare

Java - JVM

Python - pyc

其他

JavaPythonC++
应用领域
代码长度
github活跃度(第一是JavaScript)324
tiobe排行(使用人数比)132
教程最多的语言216
举报

相关推荐

0 条评论