Реальность такова, что это слишком простой пример увиливать на , Вы выберете свой подход на основе существующего соглашения - и этот пример слишком прост, чтобы принять решение по конвенции. Более интересно то, что делать с несколькими вариантами get-out-now и вложенными операторами IF - это реальная серая область.
Так что же такое конвенция? Ах ... Я прагматичный, у меня нет никаких правил. Если вы можете выпрыгнуть из окна в первых нескольких строках, я беру его, потому что мне не нужно запоминать, когда я редактирую код, который какой-то «безответный вызов функции» все равно может быть в любой момент во время работы.
Со временем эта функция будет формуться и замешиваться ошибками и улучшениями. Вы, скорее всего, представите новую ошибку с последним подходом, чем первая, потому что быстрый выход очевиден с самого начала, на вашем лице, и вам не нужно беспокоиться об этом «забытом» 50 строках вниз по функции , Разумеется, в моем опыте внедрения ошибок.
Это более сложный вызов, если вы настраиваете вещи и должны их разорвать, так как выпрыгивание может заставлять вас жонглировать 17 состояниями Шредингера в голове при внесении изменений.
Почему вы просто не делаете что-то в своей функции, а затем добавляете оператор if из функции вызова функции? Или я чего-то не хватает? –
Tomas, вы могли бы заработать очки ... Этот комментарий так же хорош, как и ответ. И это уже было поддержано несколькими ... –
Thaks Thomas by formmating! Ну, я знаю, что это разрушает сплоченность, но скажем, что два stufs обрабатывают два очень разных домена, поэтому мы не можем заблокировать его в новой функции. –