我正在制作自己的小实用函数库,并且正在尝试遵循 Phobos 的命名约定,但我真的很困惑。我怎么知道东西适合哪里?
例子:
如果有像foldRight
Phobos 这样的功能(基本上reduce
是反向的),我会在哪个模块中找到它?
我能想到几个:
std.algorithm
: 因为它表达了一种算法std.array
:因为我可能会在数组上使用它std.container
:因为它用于容器,而不是单个对象std.functional
: 因为它主要用于函数式编程std.range
:因为它也适用于范围
但我不知道哪一个会是一个不错的选择——我可以为其中至少 3 个提供令人信服的论据。
什么是约定?