我知道这听起来像是一个主观的答案,但我会尽量使问题尽可能客观,因为对这个问题的客观答案将是最有帮助的。
我最近有一位代码审查员指出我有在方法末尾包含介词的习惯。这是我最近编写的一个方法,作为该类的扩展方法Point
:
var rectangle = new Rectangle(0, 0, 2, 2);
var point = new Point(3, 1);
var result = point.DistanceTo(rectangle);
我的代码审查员提到该方法应该是point.Distance(rectangle)
. 我一直认为这是主观的和风格的问题。但是,我注意到更多的 .NET API 设计朝着这个方向发展。例如,使用 NUnit 的 Fluent Interface,您可以:
Assert.That(result, Is.EqualTo(1.0));
我在 Linq 上也看到了这一点:
list.CopyTo(anotherList);
list.IndexOf(item);
list.RemoveAt(0);
.NET 和/或第三方 API 设计人员在方法末尾使用介词是否有任何固定或一致的方式?还是只是风格和主观问题?.NET 框架中的 API 设计本身是否随着此策略而发展,还是一直存在?