Должен ли метод генерировать исключение, которое никогда не произойдет?C#

Место общения программистов C#
Ответить
Anonymous
 Должен ли метод генерировать исключение, которое никогда не произойдет?

Сообщение Anonymous »

Это вопрос о лучших практиках. У меня есть класс, примерно структурированный следующим образом:

Код: Выделить всё

// My actual class couples observers and observables, but I didn't want to overcomplicate this question.

public class MyClass
{
private HashSet mySet = new();
private HashSet myOtherSet = new();
private Dictionary myDictionary = new();

/// Thrown when  was already added to other.
public bool Add(int value)
{
// Return false if the value is already present.
if (!mySet.Add(value))
{
return false;
}

foreach (var other in myOtherSet)
{
// Use Dictionary.Add method to ensure that an exception is thrown if the key already existed,
// even though we know that will never occur.
myDictionary.Add((value, other), value + other);
}

return true;
}
}
Поскольку я добавляю свое значение в словарь только в том случае, если оно еще не существовало в хеш-наборе, я точно знаю, что исключение, созданное myDictionary.Add, будет никогда не происходит (отражение исключено). Поскольку я знаю, что мой метод не выдает выдачу при нормальных обстоятельствах, следует ли мне добавить документацию /// ?
Не удалось найти четкого ответа в документы.

Подробнее здесь: https://stackoverflow.com/questions/791 ... ever-occur
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»