使用旧的异步模式以“”结束方法名称是不是一种糟糕的做法;异步”;

本文关键字:异步 一种 模式 结束 方法 是不是 | 更新日期: 2023-09-27 17:59:57

在最近的async/await模式中,建议方法名以"async"结尾,例如"GetAsync()"。

现在假设我使用旧的异步模式,即带有Begin/End方法对和IAsyncResult的模式。我有一个方法来包装对该方法的调用,例如:

public void SendAsync(byte[] data)
{
    this.stream.BeginWrite(...);
}

还假设传递给BeginWriteEndWrite方法对于所有数据都是相同的,即它将是同一类中的方法。

在这种情况下,将此方法命名为SendAsync()是否错误,因为它可能与新的异步模式混淆?

使用旧的异步模式以“”结束方法名称是不是一种糟糕的做法;异步”;

当发现/创建/实现新的框架/模式/技术时,就会出现新的规则或建议。

命名约定只是创建标准的一种方式,以便使代码在开发人员之间更加统一;这并不意味着你不能使用你最喜欢或对你更有用的(除非你是一家执行惯例的公司)。

从我的POV来看,我不会在现在的遗留代码中采用新的约定。

此外,我总是更喜欢使用与我使用的框架类似的命名约定,这样与我一起工作的任何其他开发人员都会更容易。

检查这个(有点旧,但仍然很好):http://msdn.microsoft.com/en-us/library/xzf533w0(v=vs.71).aspx

我将遵循APM(异步模式模块),并用BeginXXX和EndXXX命名我的方法。

此外,请确保您的方法通过返回IAsyncResult正确实现模式,而不是从该方法返回时为void。

APM:http://msdn.microsoft.com/en-us/library/ms228963(v=vs.110).aspx