代码库中我的工作有使用冗余方法是最佳实践:从外部库
if (!Directory.Exists(dir))
{
Directory.CreateDirectory(dir);
}
几个例子根据MSDN文档(http://msdn.microsoft.com/en-us/library/54a0at6s(v=vs.110).aspx),这是多余的,因为createDirectory不会覆盖一个现有的目录。
这可以被视为使代码更清晰,因为从.CreateDirectory(dir)
方法中不明显这是行为。另一方面,这是代码膨胀并且保持它(即使将它添加到库/实用程序类)也有问题(例如,您必须读取/维护更多行代码)。
这里认为最佳实践是什么?
'createDirectory不会覆盖和现有目录',虽然这是真的,但是如果目录* does *存在,它仍然会抛出一个异常?我现在没有能力测试它,但我认为'if'是为了防止在这个块上出现'IOException'。 –
@EvanL Nope - 它只是返回没有问题的信息 –
没有'Directory.Exists'代码会导致我暂停和检查它。即使那不是我当时正在处理的事情。我更希望检查能够帮助开发人员阅读代码,认为这里没有任何东西可以看到。 – cgTag