【发布时间】:2010-09-14 11:32:00
【问题描述】:
当口头谈论方法时,我从来不知道是用argument还是parameter这个词还是别的什么。无论哪种方式,其他人都知道我的意思,但什么是正确的,这些术语的历史是什么?
我是一名 C# 程序员,但我也想知道人们是否在不同的语言中使用不同的术语。
郑重声明,我是自学的,没有计算机科学背景。 (请不要告诉我阅读Code Complete,因为我问这个是为了其他还没有Steve McConnell 的奇妙书籍的人的利益。)
总结
普遍的共识似乎是在团队环境中可以互换使用这些术语。除非您定义精确的术语;那么你也可以使用“formalargument/parameter”和“actualargument/parameter”来消除歧义。
【问题讨论】:
-
我可以互换使用它们.. 还没有人嘲笑我.. '这个函数有 4 个参数.. 这个函数有 4 个参数。'听起来一样。
-
可以互换使用它们,除非您试图描述参数如何工作以及如何传递参数等。此时精确的术语(有时可能很难表达)很有用.
-
这个问题至少有两个非封闭的、与语言无关的版本:stackoverflow.com/questions/3176310/… 和 stackoverflow.com/questions/427653/arguments-or-parameters。这个问题还有另一个 C# 版本;我已请求合并。
-
很高兴您提到了史蒂夫·麦康奈尔。我认识了另外一个人,他和 Robert C. Martin 一起了解软件工艺。
-
我觉得不管你是否在正式的环境中,你都应该努力使用正确的术语。我认为它很简单。当你调用一个方法时,你传入了参数。定义方法时,您正在定义将从方法/函数调用中获取参数的参数。参数 - 与函数关联并确定函数值的自变量。参数 - 定义特定流程或活动范围的限制或边界。
标签: parameters language-agnostic arguments terminology