我正在设计一个接口来传输文件并在某个远程服务器上操作它们。令人困惑的是,接口上的方法是否应该为调用者返回代码?假设的好处是调用者不必捕获异常。
或者正确的方法是返回 voids 并在失败条件下抛出异常???如果是这样,异常应该是自定义的吗?还是由语言定义的原始语言(在这种情况下为 C#)?
//Remote transfer interface 1
enum codes { SUCCESS, FAIL, HOSTUNREACHABLE, so-on and so forth }
codes init(String host, int port);
codes transferFile(String filepath, String remotename);
codes deleteRemote(String remotePath);
要传输的第二种类型的接口
//Remote transfer interface 2
//Following methods throw exceptions when they occur, catched by caller..
void init(String host, int port);
void transferFile(String filepath, String remotename);
void deleteRemote(String remotePath);
你们能说出哪种方式最好,为什么?