一个人应该在多大程度上练习防御性编程?
我有这段代码有点防御性,所以万一有人交换了 OR 语句的左右表达式,代码仍然有效:
&& ( companyId == Guid.Empty
|| (companyId != Guid.Empty && x.StoreCompany.CompanyId == companyId) )
如果我重构并简化为:
&& (companyId == Guid.Empty || x.StoreCompany.CompanyId == companyId)
最佳答案
逻辑语句越短/越不易混淆越好。我会赞扬您进行这样的重构。
关于coding-style - 一个人应该练习防御性编程的程度是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6448757/