Из программисткой жизни
Я всегда скептически относился к рассказам об “индусском коде”, подозревая некоторое преувеличение тупости написанного в Индии кода. Но несколько дней назад убедился в этом непосредственно. Посоветовал коллеге из Индии использовать в одном месте его программы на Go бесконечный цикл с проверкой условий выхода внутри. На следующий день демонстрирует мне следующий код:
n := 1
for n > 0 {…}
да ещё и с выходом из цикла по goto.
На самом деле надо так:
for {…}
и выходить по break.
Пытаюсь подсказать ему правильный вариант, так он мне начинает доказывать, что всё написано правильно, поскольку цикл будет выполняться бесконечно, как и просили. И это старший разработчик с более чем десятилетним стажем работы программистом!
Я теперь не понимаю, как Windows вообще запускается :) Это напоминает историю про работника авиационного завода, который никогда не летает самолётами, посколько видит, как их собирают.
Мне могут возразить, что этот код тоже будет работать. IMHO лучше вообще не писать программы, чем выдавать такое.
История №1490092
+-5–
Проголосовало за – 3, против – 8
Статистика голосований по странам
Статистика голосований пользователей
Чтобы оставить комментарии, необходимо авторизоваться. За оскорбления и спам - бан.
2 комментария, показывать
сначала новые
сначала новыесначала старыесначала лучшиеновые - список
Привет, коллега! Вариант индуса тоже правильный - и даже тратит примерно столько же ресурсов. Он убивает только читабельность кода. Вас учили поддерживать читабельность, а его нет. Более того, читабельность ведь понятие субъективное - может быть, ему как раз понятнее именно так.
Мы оба видели ТАКОЙ код, что аж волосы дыбом встают. У меня за 30+ лет целая коллекция скопилась :) Так что отстаньте от индуса - он явно учился на Бейсике.
+2–
ответить