Совсем нет.
В вашем примере, при условии, что вы задокументировали, что add
ожидает целые числа, assert
использование этого ограничения в начале метода на самом деле хорошая практика.
Представьте себе другие варианты, которые у вас есть, и насколько они плохи:
- не проверяйте свои аргументы.Это означает, что метод позже завершится неудачно со странной обратной трассировкой, которая, вероятно, запутает вызывающего и заставит его взглянуть на реализацию
add
, чтобы получить подсказку о том, что происходит. - будет приятно и попытатьсяпреобразовать ввод в
int
- очень плохая идея, пользователи будут продолжать задаваться вопросом, почему add(2.4,3.1)
продолжает возвращать 5
.