为了账号安全,请及时绑定邮箱和手机立即绑定

PHP、Java、Python、C、C++ 这几种编程语言都各有什么优点或特点?(一)

标签:
Java Python C++

PHP、Java、Python、C、C++ 这几种编程语言都各有什么优点或特点?

序 —— 一些问题

  1. 程序设计语言的目的是什么?

  2. 为什么大多数语言有控制流?逐行执行+跳转。这与我们的需求差很远(例如一个教务管理系统、一个自动打车APP)

  3. 为什么类型申明在C语言中要与控制流隔离开来?

  4. 现在主流语言最基本的元素是?

  5. 有没有语言它的类型结构,在运行时也可以改变?

动态性?什么是动态性?

  1. 编译后确定了什么信息,之后不再改变;

  2. 运行时可以改变、添加什么;

  3. 运行时是否保存着类型信息。

    https://img1.sycdn.imooc.com/5ffe867e0001b72a06670300.jpg

程序中的信息分为几类?

  1. 数据信息
    a) 编译时Meta-Data元数据(类型框架、空间占用)
    b) 运行时Meta-Data元数据(继承体系、用于new或者反射)(特别区别编译与运行的Meta-Data的不同。)
    c) 堆栈段中地址偏移(C++的switch case中不能声明变量、共享内存)
    d) 静态段中地址

  2. 指令信息
    a) 代码段(动态性需要操作系统或者虚拟机支持,例如动态链接库,动态类加载,lisp语言自生成代码)

语言举例

汇编语言

汇编语言没有动态性吗?没有。首先,寄存器、数据段、堆栈、代码段完全由程序员控制。完完全全是写死了的。然后,根据冯诺伊曼机的规则;取指令,执行,取指令,执行……

既然都有数据段了,还要堆栈段来做什么?这不是多余?

一开始本没有堆栈,直到60年代出现了module模块化,才有了堆栈。汇编中的模块叫子程序,不过仍旧靠程序员全权控制。



点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消