命名约定,C# 异步方法

Amm*_*Ali 0 c# coding-style naming-conventions

应该在将要异步执行的方法名称中添加一个 Async 前缀。与在 MS EF Core 中一样,所有运行 async 的方法都有 async 前缀。但它们也有同步方法,没有同步前缀。

在某些方法设计为并行运行的情况下有什么建议。

寻求建议。

Gab*_*uci 9

我假设您的意思是“后缀”,而不是“前缀”。

Microsoft 使用“Async”后缀是因为他们(通常)添加了已经存在很长时间的方法的异步版本。因此,除了将它们命名为与同步版本不同的名称外,别无选择,因此添加“Async”是有意义的。

如果您自己创建新方法,那么这就是我所做的:

  • 如果您将同时拥有这些方法的异步和同步版本,则将异步版本命名为“Async”。
  • 如果该方法的唯一版本是异步的,那么确实没有必要使用“Async”后缀,因为返回类型清楚地表明它是异步的。

最后,这取决于你。它真的没有功能上的区别。

  • _"...如果该方法的唯一版本是异步的,那么确实没有必要使用“Async”后缀,因为返回类型..."_ - 'Async 后缀使读者明显看出方法是异步的,无需查看返回类型。另外,仅仅因为没有同步替代方案而不将其命名为 xxx'Async 很可能会让开发新代码库的读者感到困惑 (2认同)
  • 这“取决于你”,但是现在,异步一直向下可能是主要或唯一的方法。不要为了后缀而添加后缀;添加它是因为它与规范不同。 (2认同)