使用Workspace组织复杂Rust项目

发布时间:2024-10-17 08:45
最后更新:2024-10-18 09:43
所属分类:
Rust

一个功能复杂的项目不会把所有代码都编写在一个项目里,有很多可以共享,或者与主项目隶属关系不大的项目,往往会独立成一个新的项目。但是这一系列相互独立又相互联系的项目在管理上就存在了一定的困难。Workspace(工作区)是Rust提供的一种方便的项目组织方式,允许将多个相关的包和项目组织在一起。通过Workspace,这些项目可以在一个项目中的共享依赖和配置文件,而且还可以完成对多个crate的同时管理。


索引标签
Rust
工作区
项目结构
Tauri

Rust惑点启示系列(八):奇形怪状的Rust闭包

发布时间:2024-10-16 21:33
最后更新:2024-10-16 22:47
所属分类:
Rust

闭包也是Rust中使用量很大的数据结构了,闭包的使用可以给程序的逻辑处理过程带来很多便利,但是也带来了不少的复杂性。Rust中的闭包类型有三种,这相对其他语言来说就已经十分复杂了,也让急于上手的人一时间摸不到头脑。本文尝试对闭包和语句块的部分特性做一些讨论。


索引标签
Rust
所有权转移
闭包

Rust惑点启示系列(七):使用全局变量和单例

发布时间:2024-10-16 13:28
最后更新:2024-10-16 14:37
所属分类:
Rust

全局变量和单例模式都是我们在其他各种语言中可以非常熟练使用的概念,但是在Rust里这两个概念在使用起来就不是那么顺利。这主要跟Rust对于内存的控制规则有关。本文将尝试讨论一下如何在Rust里实现这两种功能。


索引标签
Rust
全局变量
单例

Rust惑点启示系列(六):如何下手编写一个函数

发布时间:2024-10-16 06:20
最后更新:2024-10-16 13:16
所属分类:
Rust

编写一个函数是Rust中再普通不过的事情了,但是Rust里的函数在编写的时候确始终感觉不像是其他语言中那么丝滑,有的时候甚至会有一些手足无措的感觉,不知道该如何下手。本文尝试从大部分函数常见的处理流程出发,对编写一个Rust函数的过程和可能遇到的问题做一个简单的讨论。


索引标签
Rust
函数
模式匹配
所有权
引用计数

Rust惑点启示系列(五):工具类型太多了

发布时间:2024-10-14 22:33
最后更新:2024-10-15 23:20
所属分类:
Rust

Rust中的泛型套娃也是严重影响Rust代码阅读的罪魁祸首之一,大量的泛型套娃类型也带来了很多疑惑,让我们在编码的时候会产生不知所措的感觉,不知道该如何正确的选择这些类型去使用。本文的目标就是对常见的工具泛型类型和工具特征进行一个记录,方便在日常的选择使用。


索引标签
Rust
泛型
特征

Rust惑点启示系列(四):到处都是的大括号

发布时间:2024-10-14 15:16
最后更新:2024-10-14 22:28
所属分类:
Rust

Rust中的大括号也是一个非常神奇的特点,它除了跟其他语言中的大括号一样可以用来形成一个语句块以外,还可以被用来实现很多功能。这些一般是其他语言做不到的。不过这也给Rust的代码阅读带来了一些复杂。


索引标签
Rust
语句块
生命期
表达式

Rust惑点启示系列(三):引用的生命期从来就不够长

发布时间:2024-10-14 13:54
最后更新:2024-10-14 15:14
所属分类:
Rust

代码被Rust编译器提示“引用的生命期不够长”是一件不管是刚开始学习Rust的新手还是Rust老手都经常能够碰到的事情。出现这种错误有方方面面的原因,而且不一定是我们的代码写错了。不过究根结底,这个问题还是跟生命期有关的。


索引标签
Rust
引用
生命期

Rust惑点启示系列(二):从函数中返回一些东西

发布时间:2024-10-14 08:16
最后更新:2024-10-14 13:31
所属分类:
Rust

从函数中返回一个值,看起来是非常简单的一个事情,不过在Rust里,就总是感觉不是那么简单。沿袭自其他语言的习惯,可能我们并没有意识到在一个函数里我们究竟返回了什么内容。但是在Rust这种“手动档”语言里,还就得认真的把它搞清楚。


索引标签
Rust
所有权
函数返回值
引用
生命期

Rust惑点启示系列(一):避免随意使用Clone

发布时间:2024-10-12 21:43
最后更新:2024-10-13 22:48
所属分类:
Rust

在编写Rust程序的时候,发生未被注意的所有权转移是一件非常常见的事情,而能做出的修改也往往是Clone一下。我们似乎从来没有想过这样解决所有权转移问题带来的后果。那么在这里就对如何选择使用Clone的这个问题简单的讨论一下。


索引标签
Rust
Clone
引用

对象安全性带来的一个大坑

发布时间:2024-10-07 21:37
最后更新:2024-10-07 21:37
所属分类:
Rust

在最近的编码中遇到了一个提示the trait cannot be made into an object的问题。这个问题其实是从其他语言中直接迁移来的习惯造成的,这里记录一下问题所在。


索引标签
Rust
对象安全性
动态分发