【原创】我心中的rust编程语言

作为一种新增的编程语言,rust可谓被各大IT大厂放到了最显眼的位置,公司本来有一次rust训练营,但由于疫情,外请的rust讲师《Rust编程之道》的作者张汉东来不了,不过通过自学编程书籍也有些心得,遂用此文记录之。

环境搭建

如果是直接连外网的环境安装比较简单,如果不能连外网的环境,需要下载离线包。windows版本还有msvc和gnu这2种不同的版本,考虑到各平台移植的兼容性,我选择了gnu版本的编译器。

第一个程序

比较简单,使用cargo生成器,可以轻松生成一个最小的可执行程序或者动态链接库:

cargo new test -bin

编译:

cargo build

运行:

cargo run

如果要做一些稍微负责一点的,就涉及到要从外网同步现在组件库了,默认从国外的cargo.io网站同步,国内现在好像只有中科大有相对完整的镜像源,清华有安装源,但后面实际开发过程中的其他开源组件的镜像源没有。

而且如果要一些相对新的组件,中科大源上也没有,这时还是要到cargo.io上同步。

配置中科大源的方法:

[source.crates-io]

replace-with = 'ustc'

[source.ustc]

registry = "https://mirrors.ustc.edu.cn/crates.io-index"

rust使用特有的生命周期管理,借用,引用使得新增的对象在出了对应的作用域后自动回收,确实是比python,Java,go这种内存不够了再触发垃圾回收机制的效率更高。

但rust编程语言的设计者和c++同源,所以入门门槛比较高,学习曲线比较陡峭。

rust和go一样也支持不安全的用法,可以让对内存管理非常有信心的用户能达到和c/c++相同的效率。

和其他现代编程语言类似,rust编程语言开发过程中也依赖大量的开源组件,这些组件也在不断迭代更新,所以开源组件的管理对大厂而言,也是不小的工作量。有名的rust数据库tikv就要引用500+的开源组件。

你可能感兴趣的:(【原创】我心中的rust编程语言)