Lbyl против EAFP в Java?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Lbyl против EAFP в Java?

Сообщение Anonymous »

Недавно я учил себя Python и обнаружил идиомы LBYL/EAFP в отношении проверки ошибок до выполнения кода. В Python кажется, что принятый стиль является EAFP, и, похоже, он хорошо работает с языком.

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

def safe_divide_1(x, y):
if y == 0:
print "Divide-by-0 attempt detected"
return None
else:
return x/y
eafp ( это e asier a sk f orgivent, чем p ermission ):

p ermission ):

def safe_divide_2(x, y):
try:
return x/y
except ZeroDivisionError:
print "Divide-by-0 attempt detected"
return None
< /code>

Мой вопрос: я никогда даже не слышал об использовании EAFP в качестве основной конструкции проверки данных, исходящей из фона Java и C ++. Является ли EAFP чем -то мудрым для использования в Java? Или слишком много накладных расходов от исключений? Я знаю, что есть только накладные расходы, когда на самом деле брошено исключение, поэтому я не уверен, почему более простой метод EAFP не используется. Это просто предпочтение?

Подробнее здесь: https://stackoverflow.com/questions/404 ... fp-in-java
Ответить

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

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

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

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

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