请问编程中的 上层 和 底层 是什么意思? 比如有人说 "用JAVA或c#做上层,用汇编或cc+

请问编程中的 上层 和 底层 是什么意思? 比如有人说 "用JAVA或c#做上层,用汇编或cc+,第1张

越是枯枯底层越接近硬件,也就是直接控制线程来控制程序的执行,上层只是对语言进行了封装,比如说有一个功能庆败铅很常用,但是代码很长,就把它誉好封装成一个代码块,只需要调用一个单词就能执行很长的代码,你说的这几种是编程语言,其中汇编语言是最底层的,其他的都是对代码封装而成的上层语言,上层语言可以减少开发中的代码书写量

上层(或者是表层)、中间层和底层没有严格意义上的定义,在不同的项目中需要结合具体需求来具体分析。

一般来说,表层就是指展现给用户看的部分;而底层就是系统的最核心的部分。一般我们认为,越接接硬件的编程就越底层。

比如,一个在线通讯软件(QQ这种),表层就是窗口啊、菜单啊、按钮啊这些玩意儿;中间层是业务逻辑部分,就是你点击这些按钮会产生相应的什么事件,进行了什么 *** 作;底层就是Socket网络通信了。当然,我大行这里这三层是大致划分的,实际开发中比这个要更具体详细。

再比如,拿题主说的游戏举例子,表层就是各种游戏的界面了;底层就是游戏引擎了。底层干嘛?接收你的鼠标键盘响应信号、 *** 作显卡在显示器指定位置生成各种二维的三维的图像、控制声卡输出音频等等等等。

至于编程语言问题亩局,这就牵扯到低级语言和高级语言的问题了。一般来讲低级语言和高级语言区别在于:

高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好。

低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差。

越低级的语言,形式上越接近机器指令(汇编语言就是与机器指令一一对应的)。而越高级的语言,一条语句对应的指令数越多,其中原因就是高级语言对底层 *** 作进行了抽象和封装,使编写程序的过程更符合人类的思维习惯,并且极大了简化了人力劳动。也就是说你用高级语言写一句,会被转换成许多底层 *** 作,大部分的工作交给了负责转换的机器(即编译器),从而人力得到了解放。因为机器就是用来为人类提供便利的,所以说高级语言的出现是计算机发展的必然结果。(参考:http://blog.csdn.net/guoxiaoqian8028/article/details/9103151)这就产生了执行效率的问题。

所以说用 C/C++ 这类语言更适合写游戏引擎。游戏嘛,必定是要求响应速度极高的,总不能按完键盘了等100毫秒才响应,生成个三维地图电脑卡半天。但一般不会游戏的所有部分都用 C/C++ 来完成,为什么?上面说了,可维护性差、可移植性差。这时候就需要用面向对象这种“高级语言”出马了。

至于题主提到的“不同语言之间的互迅仿让通”,建议题主理解一下“接口”(不是面向对象里的“接口类型”)的概念。

泛泛而谈,希望对题主有所帮助。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12248893.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存