就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。
10年前关闭。
我的问题是语言超越,我经常发现“复制”函数的原型(prototype)按以下顺序定义参数:argument1:“destination”然后argument2:“source”。
例如 C 中的 memcpy 就是这种情况。但 bash 上的文件复制不是这种情况!你说,例如:“$ cp file file2”,其中 file2 是新文件。
这对我来说更有意义,我们总是说“请在此处复制该文本”而不是“在此处复制该文本”,这是尤达式的。
所以真正的问题是:一个好的 API 应该使用什么形式(顺序)?也许还有另一个附属问题:每个人都期待什么形式,如果有的话?
最佳答案
我希望来源首先出现,然后目的地。
如果你能在语言中消除歧义,那就更好了。例如,在 OO 语言中:
source.copyTo(destination);
在具有命名参数的语言中:
copy(source: s, destination: d);
重要的是要让阅读代码的人清楚发生了什么。代码的阅读频率高于编写频率。
关于api - "destination, source"或 "source, destination"哪个更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7053515/