rust学习一、入门之搭建简单开发环境

news/2024/10/21 5:06:10

最近希望学习一些新的,选择了rust.

本篇介绍怎么搭建一个非常简单的windows开发环境,以及如何使用cargo 命令

1、搭建开发环境(windows11)

a.登录官网

https://www.rust-lang.org/tools

一看就明白,此处略。

b.安装rustup

一看就明白,此处略。

c.安装 cargo script

cargo install cargo-script

完成后

注意:时间有一点点久。

测试

cargo script main.rs

这个东西可以运行一个单独的rs文件,在学习基础的时候非常有用

 

d.安装ide

有多个选择,包括eclipse,jebrain(rustover),vscode。

如果要安装jetbrain的,可以下载https://www.jetbrains.com/rust//download/download-thanks.html?platform=windows

 

在初学阶段,个人更喜欢使用cargo的命令行来运行。强烈建议初学者这样入门更好一些。

 

f.找几个值得关注的网站

  • 官网  https://www.rust-lang.org/  流畅,不需要fq
  • 仓库  https://crates.io/ 流畅,不需要fq
  • 中文说明 https://kaisery.github.io/trpl-zh-cn/foreword.html   ,入门看看可以,如果要适配版本,需要看英文https://www.rust-lang.org/
  • https://rustwiki.org/  是  https://www.rust-lang.org/  ,如果能看英文还是看英文,避免翻译障碍和版本问题
  • https://zhuanlan.zhihu.com/p/688906139  知乎关于rust组件的
  • https://lib.rs/  用于搜索rust有关的库,内容极多, 看来rust还是挺受欢饮
  • https://course.rs/  这个好像也还可以

入门大体是够了。

2、cargo命令

这是一个极其重要的工具,某种程度上类似mvn,但是比后者强大太多了。

2.1 查看cargo参数

在cmd下执行 cargo --help 可以查看常见的命令,具体效果因版本不同而不同,以下是1.81.0

cargo --help

 

如果要看更多的可以输入

cargo --list

 

如果想看更加详细,则可以看官网的文档:

https://doc.rust-lang.org/book/

  

2.2 常见的cargo命令

以下假设工程是在windows E:\learning\gitee\learnRust下,为了便于行文,以下使用$project替代

  • 安装/卸载三方包  cargo install/uninstall
  • 更新依赖  cargo update
  • 查找包(crate) cargo search
  • 工程-创建    cargo new projectName

       在$project下会生成cargo.toml文件,这个文件可以编辑。更多信息只能阅读高级内容,此处略。

  • 工程-重新初始化 cargo init ,在一个存在的目录中执行初始化
  • 工程-添加/删除依赖 cargo add/remove(rm) ...

       会修改cargo.toml,类似maven修改pom.xml

  • 工程-构建    cargo build/b

       在$project\target\debug 生成debug版本

  • 工程-发布    cargo build --realease

       在$project\target\release 下生成发布版本

  • 工程-运行测试版本 cargo run/r

      run命令有许多参数和选项,可以通过cargo help run来阅读,也可以看有关资料。

  • 工程-运行发布版本  cargo run --release / -r
  • 工程-检查  cargo check/c
  • 工程-测试  cargo test/t
  • 工程-移除target目录 cargo clean
  • 工程-发布 cargo publish 打包和上传到仓库

注意,cargo还为其中几个极其常用的命令提供了缩写,分别是:

  • build - b
  • check -c
  • run -r
  • test -t
  • remove -rm

2.3 cargo其它命令

其它的主要是一些关于仓库(包括代码仓库git和cargo仓库)的,以及其它一些乱七八糟的常规命令,例如

查看版本  cargo --version

查看命令帮助 cargo help xxx,例如cargo help run

查看文档 cargo doc ,这还是不错的

第一次运行的时候,cargo会先下载文档:

下载了之后就可以查看了 cargo doc --open ,会在浏览器上打开当前项目有关的文档

实际就是在$project\target\doc下创建html,并打开index.html。

这个还是非常方便的。

 

具体略。

3、小结

rust的开发环境很友好,令人惊讶。个人觉得比学习java更加方便。

这是因为有个强大的cargo工具。

所以掌握cargo工具非常有必要,有了这个,即使没有专业的ide,也可以修改、编译、发布程序。

cargo的命令除了固有的一些,还有许多命令是可以通过cargo install而获得,例如cargo script

cargo script是一个很强大的工具,非常适合初学者学习,强烈建议初学者掌握这个!

 

rust的有关事物的命名都十分古怪,什么rust,cargo,crate...  

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/72354.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

《RabbitMQ系列》之RabbitMQ的4种Exchange

大家好,我是 tc,今天为大家介绍一下RabbitMQ中的4种exchange,水平一般,能力有限,若有错误之处,欢迎指正。对RabbitMQ稍有了解的朋友应该都知道,在RabbitMQ中,一个有4中Exchange,分别是direct、topic、fanout、headers。 其实,还有一个默认的交换机,称为default exch…

10.16测试分类

软件测试之测试分类 一、按开发阶段划分 1、单元测试 2、集成测试 3、系统测试 4、验收测试 二、按查看代码划分 1、黑盒测试 定义:黑盒测试也是功能测试,测试中把被测试的软件当成一个黑盒子,不关心盒子的内部结构是什么,只关心软件的输入数据和输出数据 比如: 计算器当作…

C#线程---await

简介:前面异步编程的不足:它允 许我们以模块化的方式设计程序,来组合不同的异步操作。遗憾的是: 一: 当阅读此类程序时仍然非常难理解程序的实际执行顺序。在大型程序中将会有许多相互依赖的任务和后续操作,用于运行其他后续操作的后续操作,处理异常的后续操 作,并且它…

倒排索引及ES相关概念对比MySQL

一、倒排索引 1、先把文档内容进行分词,形成词条与文档ID的对应关系,叫做词条库,词条具备唯一性,建立索引 2、对搜索内容进行分词,分词后得到一个关键词列表,根据关键词去词条库中匹配,在找对应的文档ID列表 3、然后根据文档ID列表,找到对应的文档信息 对比:二、ES相关…

SD外向交货单

1、写在前面 1.1、文档说明 本文档将介绍外向交货单的创建、修改、删除、过账以及冲销,并且包含如何使用代码来实现上述过程。另外,还将介绍衍生出的交货单屏幕增强和BAPI维护扩展字段等内容。 1.2、关于外向交货单 在 SAP系统中,外向交货单(Outbound Delivery Note)是一个…

Idea序列图插件-SequenceDiagram Core

简介 SequenceDiagram Core 是一个 IntelliJ IDEA 插件,它允许开发者直接在 IDE中创建和编辑序列图(Sequence Diagrams)。序列图是 UML(统一建模语言)中的一种图表类型,用于描述对象之间如何交互以及这些交互的顺序。这种类型的图表对于理解复杂的系统流程、设计模式或者…

【Unity微信】Unity发布微信小游戏+对接第三方SDK过程

官方文档:https://wechat-miniprogram.github.io/minigame-unity-webgl-transform/ 上面的文档,能完成库的导入和发布操作下面开始调用接口获取玩家信息1 2 /// <summary>3 /// 初始化SDK4 /// </summary>5 private void InitSDK()6 {7 …

pikachu靶场搭建

使用Dockers 搭建靶场安装docker 因为我使用的是kali 这里就直接安装了apt-get install docker.io搜索 pikachu 的镜像容器┌──(root㉿kali)-[/home/kali] └─# docker search pikachu NAME DESCRIPTION STARS …