我正在查看我继承的一些代码,如果我喜欢一些代码,我无法决定.
基本上,有一个方法如下所示:
bool Connect(connection parameters){...}
Run Code Online (Sandbox Code Playgroud)
如果成功连接则返回true,否则返回false.
我过去曾编写过这样的代码,但现在,当我看到这种方法时,由于种种原因,我不喜欢它.
它很容易编写代码,只是忽略返回的值,或者没有意识到它返回一个值.
无法返回错误消息.
检查方法的返回并不是很好看:
if(!Connect(...)){....}
我可以重写代码以在它没有成功连接时抛出异常,但我不认为这是一种特殊情况.相反,我正在考虑重构代码如下:
void Connect(Connection Parameters, out bool successful, out string errorMessage){...}
Run Code Online (Sandbox Code Playgroud)
我喜欢其他开发人员必须提供成功和错误字符串,以便他们知道该方法有错误条件,我可以知道返回一条消息
有人对此事有任何想法吗?
谢谢 - 马特