Комментарий FizzBuzz, который смутил меня - это неправильно закодированные условия? - PullRequest
0 голосов
/ 25 октября 2010

Я обнаружил вопрос "FizzBuzz" сегодня в ужас кодирования . Отличная статья. Однако что-то в одном из комментариев пользователя смутило меня - вот цитата:

Боже, ребята - КАЖДЫЙ из вас, кто дал пример кода - КАЖДЫЙ - жестко закодированный условия FIZZ и BUZZ ...

Мне кажется, что этот плакат высмеивает людей за "жесткие" условия, то есть:

if(i % 3 == 0)
...

Какой смысл пытается показать плакат? Есть ли другой способ указать условия в программе?

Спасибо, что нашли время!

Dan

условия FIZZ и BUZZ ...

Ответы [ 3 ]

2 голосов
/ 25 октября 2010

Нет ничего плохого в жестком кодировании некоторых условий.

В контексте интервью, когда я знаю, что я кодирую FizzBuzz.java, а не Enterprise Fizz Buzz с базой данных и более чем 1000 пользователей одновременно, требующих пять девяток безотказной работы, идеально подходит для жесткого кодирования этих условий.

Программисты начального уровня, по крайней мере те, о которых вы спрашиваете FizzBuzz, должны следовать спецификациям и делать решения максимально простыми и элегантными. Если вы являетесь проворным разработчиком программного обеспечения, такие функции противоречат YAGNI и не должны поощряться. Если интервьюер не спрашивает о возможности использовать другие факторы, кроме трех и пяти, то это не входит в спецификацию и поэтому не требуется.

2 голосов
/ 25 октября 2010

Цель Fizz Buzz - быстро отсеять непрограммистов, а не найти лучшего программиста. Любая разумная функция, которая соответствует спецификации, приемлема для этого теста.

Если вы не жестко закодировали, отлично, вы экстра-пасс. Но это не освобождает вас от трудных вопросов, которые следуют. Я обычно увеличиваю сложность с каждым вопросом, но не хочу терять время, если кандидат полностью не может ответить на простые вопросы.

0 голосов
/ 26 октября 2010

Это шутка.

...