是否有组织Rust项目的传统方式?

时间:2016-12-22 19:16:10

标签: rust

组织Rust项目是否有标准时尚?我已经使用C系列编程语言超过九年了,但Rust在某些方面似乎有所不同。

是否应该以与C系列语言类似的方式组织他们的项目,尤其是面向对象的语言?

project
|->src
   |->main.rs
   |->structs.rs

或者也许是这样?

project
|->src
   |->main.rs
   |->struct0.rs
   |->struct1.rs
   |->struct2.rs
   |->struct3.rs

即每个结构一个文件?

或者每次创建新的二进制项目时,他们是否会创建新的二进制项目?我目前正在使用Cargo来生成我的项目,但公平地说不太了解它。最后,当我阅读整个Cargo文档时,我会想到一点,尽管我希望在此之前更多地了解Rust。

请在树和文本中解释,以及可能的一些代码。

1 个答案:

答案 0 :(得分:5)

尝试计划如何根据逻辑而不是对象来组织程序。将您的逻辑拆分为单独的模块。

如果您有一个小模块,则将其设为单个文件modname.rs,或者如果它是一个更大的模块(由子模块组成),则创建一个文件夹中至少包含mod.rs个文件:{{ 1}}。

如果您的项目变得非常庞大,您还可以将其拆分为几个箱子(库),然后您可以在主项目中依赖它们。

您可以在官方防锈书中阅读有关Rusts包装箱和模块系统的更多信息:https://doc.rust-lang.org/book/crates-and-modules.html