不是分层蛋糕的类比

我一直在兴奋地关注一些#Rust2018博客帖子。这有点有趣我们如何在过去的成功基础上再接再厉,达到新的高度。在离家更近的地方,文档团队开始尝试制定自己的年度目标,这场讨论结合了一些社区博客的帖子引起了我的注意:

有几个人已经意识到“你如何使用语言”之间有一点差距初学者教程和“分钟秘传”/“累积设计规划”先进的讨论。每个人都喊出缺少中间的医生,但是……我真的不知道那是怎么回事间隙。>_>所以我做了一件自然而然的事我在推特上问/漫无边际地问.

我最初的想法是这样的文档不会关于特别是生锈,但更多关于其他一些主题,只是增加了使用Rust库和代码的装饰样品。换句话说,“中间”文档根本不会被框为“文档”,而是深挖博客帖子这主要是关于其他东西,而不是具体的铁锈。作为某人谁还没有真正接触过计算机的任何特定领域,也没有尝试写一个其中,我自己感到相当可怕。

推特帖子得到了一些很好的回应。以下是对具体想法的一些回应那些被认为是“中级”文档的人,或者那些通常缺乏的东西比TRPL本身更先进:

从那里开始,我想出了一些具体的建议,似乎可以解决这些问题:

在看了这些建议和想法之后,我注意到了它们之间的区别提案和作为Rust的现有官方和非官方文献文档。我有一种初学者和高级文档的感觉,都专注于小细节。对于初学者文档,他们关注的“小细节”是基本语法、,特定的语言特征,或某些事物在特定情况下如何相互作用。使用高级文档,您仍然可以获得“小细节”,但现在它们是关于需要大量上下文,或某个特性的含义,或某些库的实现细节或功能等。

关键区别在于上下文。初学者文档只需要编程意识主题,一些使用另一种语言的经验(如果你专注于介绍首先是编程人员),但没有具体介绍Rust。先进的另一方面,文档建立在对语言其余部分的广泛知识的基础上,或者某个系统的实现,或某个领域的背景知识,等等。

另一方面,“中级”文档似乎更侧重于“大画面”。在其他单词,初学者文档向您展示一组工具,高级文档向您显示其逻辑基础,但是中间文档会告诉你它们是如何协同工作的,如何用它们构建东西。因此早些时候,所有的焦点都集中在“大型项目”上。

(然后我做了一个剑的比喻来强调这一区别。)

如果没有这种语料库,我们会觉得Rust是一种用于玩具程序或已经从不同领域了解程序设计的人。没有办法学习如何用Rust编写大型程序,而不是自己编写,这可能是一种风险不愿接受。更糟糕的是,来自其他语言的几种设计(尤其是那些严重依赖面向对象设计)在Rust中非常痛苦,并且没有书面的游戏计划对于学习Rust的人来说,如何适应它可能是一个巨大的绊脚石。

如果这一切让人觉得过于简单化,那很可能是这样昨天的推特帖子是为了我自己的目的,所以我可以得到这些想法的列表如果您对文档有更具体的想法,可以填充此空间,请告诉我!我会的很高兴看到今年有这样的活动。