上次一篇“你写的try…catch真的有必要吗”引起了很多朋友的讨论.本次我在code review又发现了一个问题,那就是有人有意无意的写出了return null这样的代码,例如: public User GetUser(Guid userId) { if ( /*for some reason*/) return null; return DB.GetByUserId(userId); } 这样的写法有木有问题? 在我看来没有充分的理由不应该返回null,因为方法的使用者并不知道在何种条件…