Какова наилучшая практика при возврате данных из функций. Лучше ли возвращать нулевой или пустой объект? И почему нужно делать одно над другим?
Рассмотрим это:
public UserEntity GetUserById(Guid userId)
{
//Imagine some code here to access database.....
//Check if data was returned and return a null if none found
if (!DataExists)
return null;
//Should I be doing this here instead?
//return new UserEntity();
else
return existingUserEntity;
}
Давайте сделаем вид, что в этой программе будут действительные случаи, что в базе данных с этим GUID не будет никакой информации о пользователе. Я бы предположил, что было бы нецелесообразно бросать исключение в этом случае? Также у меня создается впечатление, что обработка исключений может повредить производительность.