zoukankan      html  css  js  c++  java
  • 编程思考

    由于 语言切换太多,不得不去思考下各们语言的本质

    1、语言的最底层

      计算机底层数据为二进制数据,各种语言通过编译再编译转换成二进制数值,通过各种编码表最终转换为计算机可识别的数值

    2、追本溯源

      底层是二进制数据,那么各门语言之间的关系是什么?

      C为各大语言的爸爸。在计算机内底层设计中,数值被存贮在内存空间中

      <1>如Python语言

      m = “body”  是在内存中开辟出一块内存空间,这块内存空间有它自己的内存地址。计算机可以通过内存地址找到它,由于内存地址记不住,所以给它起了一个别名m

    Python 也可以通过别名去找到它

         拿 清华大学作比喻,清华大学就是别名,清华大学的地址就是内存地址,清华大学的各种建筑物,里面所有的东西都是内存空间的数据。

      <2> 语言的底层

      所有语言中,都会给内存地址起一个别名。对数据进行操作,最核心的是对内存空间中的数据进行操作。

      在内存空间中,body是一个字符串,在计算机看来,是4个二进制数据,每个二级制数字通过编码表代表一个字符,因而

      body这个字符串,底层被设计为数组是最合理的。

      由于编码的原因,因而所有语言中,int类型都被强制转换为string类型,float和int可以互相强转。

      <3>go

      go 在我看来,是吸收了c的指针精华,c++的内存管理,java的严谨,Python的灵活的一门新语言,既然是一门新语言,所以忘了前面的四种特性

      在语言中,最核心的部分还是对内存空间中数值的操作。

      数值最常规的操作为增删改查。

      以下是go的最主要的特性:

    1. 自动垃圾回收
    2. 更丰富的内置类型
    3. 函数多返回值
    4. 错误处理
    5. 匿名函数和闭包
    6. 类型和接口
    7. 并发编程
    8. 反射
    9. 语言交互性

      

      

      

  • 相关阅读:
    error: Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27
    C# Console 运行之后最小化到状态栏
    CentOS7 设置防火墙端口
    Spring boot 与quart集成并在Job中注入服务
    Cron表达式周1至周5,每天上午8点至下午18点,每分钟执行一次
    Electron 调用系统Office软件
    jquery之超简单的div显示和隐藏特效demo
    IE系列不支持圆角等CSS3属性的解决方案
    使用CSS3建立不可选的的文字
    ASP.NET中使用TreeView显示文件
  • 原文地址:https://www.cnblogs.com/jiangweili/p/9322398.html
Copyright © 2011-2022 走看看