如何将 Clean Code 应用于 R 以及特定于 R 的一些替代方案是什么?

How to apply Clean Code to R and what are some alternatives specific to R?

我自学 R 的方式非常糟糕,我正在努力改进。我读过 Robert C. Martin 的 Clean Code: A Handbook of Agile Software Craftsmanship(2009 年),它提供了编码的最佳实践,我发现它很有帮助。然而,我理解它的能力是有限的,因为除了 R 之外我没有编程经验,所以无法理解行话(或许多示例,用 Java 编写)。我的问题是:

  1. 在附图中,我列出了 Clean Code 中我不理解的术语,并猜测了 中的等价物R 术语 - 如果我有任何错误,你能纠正我吗?(我确实买了这本书,但为了这个问题的目的,Clean Code[=27= 的 pdf ] 可在此处找到:Clean Code pdf)

如果我找到其他提供基础最佳实践的书籍,例如 Clean Code 确实是专门编写的 for/with R,那真的很有帮助。我将 R 用于数据科学,如果不创建一个完整的老鼠巢,我永远不会深入研究一个项目;特别是,我很难编写简洁的代码,知道什么时候应该开始一个新脚本,以及如何让单独的脚本连贯地一起工作。

我还阅读了 Wilson 等人的《科学计算的良好实践》。 (2017),这很棒。我确实使用 R 项目。感谢您的宝贵时间!

R 是一种 multi-paradigm 语言,因此直接采用 OOL-like 代码风格来提高您的 R 技能并不是最好的主意。 16 of the usual GoF design patterns are irrelevant or trivial in FP(因此在 R 中也是如此)- 用面向对象的思维方式限制自己会适得其反。

我确实推荐阅读“整洁的代码”(OO 代码的外观与 FP 程序员认为的“整洁”代码没有太大区别),但要真正优化您的 R 代码,您需要 FP 的补充。在这种情况下,您可以阅读大量书籍:Michelson 的“通过 Lambda 微积分介绍函数式编程”(如果您是 FP 的新手)、Neal Ford 的“Functional Thinking”、Joshua Backfield 的“Becoming Functional” .

FP 是您可以在 R 中使用的纯粹未开发的力量。为什么要限制自己只使用 OOP?