Rust在偏底层的某些领域是替代C的

Rust是近两年呼声比较高的一种新型开发语言。市场占有量并不大,但增长速度极为迅猛。有人统计过,在计算机行业,平均每33.5天就有一种所谓的新型开发语言面世,这还不包括很多企业内部、项目内部的内置简易流程工具。然而大浪淘沙,如今仍然占据着市场地位的,不过仍然是耳熟能详的有限几种。

对于初学者,Rust具有比较陡峭的学习曲线,虽然学习Rust能训练良好的编程习惯,从长远看对提高学习者的开发素养极具价值。但短期的大量付出很容易让初学者心力交瘁。并且尽管官方文档并不欠缺,但学习资料对于初学者来讲仍然是远远不够的。所以比较而言,得不偿失。

而什么是C++?

C++是一种高级、通用的编译语言,已经存在一段时间了。由于其语法复杂,C++代码用于需要高速和并发的程序。C++以帮助您真正接近金属而闻名。C++是C的扩展,因此它继承了许多相似之处,但偏向于嵌入式软件和大型系统

它以其性能、稳健性和效率而闻名。C++提供了对系统及其内存的大量控制。C++是构建MicrosoftWindows等操作系统和视频游戏开发的主要语言,因为一些游戏开发框架是用C++编写的。

C++还提供了一个丰富的标准库,称为标准模板库。有了它,可以轻松构建从GUI应用程序到桌面应用程序,再到3D图形和游戏的所有内容。

游戏引擎:总的来说还停留在小型项目的阶段,并没有虚幻这种成熟的大型引擎的出现,但是目前缺乏的是人力,而不是技术上做不到。我相信Rust在3D图形方面比C++要更好。(2DGUI除外)

硬件驱动:虽然和内核开发差不多,但是可能需要自己写一个unsafe的wrapper,可能会导致大量重复的代码或者是使用宏来处理,但是这是没办法的办法。听说AMD的GPU驱动充斥着大量使用不知道哪来的代码生成器生成的C代码,导致代码体积十分庞大,可维护性极差。一定程度上复杂的代码也是硬件驱动的必然吧。

当前有两个标志性事件,linuxkernel,已经同意使用rust来编写内核模块,这个绝对够底层了。android,Google也决定引入rust来开发底层服务。linuxkernel加上android,是两个使用广泛的操作系统,rust在这两领域突破影响是巨大的。

首先Rust并不是变魔术消除


转载请注明:http://www.aierlanlan.com/rzfs/2336.html