Он позволяет увидеть то, что Терри, возможно, не знал, когда начинал писать игру: сколько в ней будет кат-сцен, как будет работать главное меню и сколько может быть непонятных потенциальных конечных состояний у странных режимов [...] Вместо того, чтобы оглянуться назад и заняться организацией, Терри решил что-то вроде этого: «Эй, я просто буду добавлять состояния в этот оператор на случай, если они мне пригодятся». Это на 100% нормально и необходимо для того, чтобы выпустить игру.
Кот очень мудрые вещи говорит, вот без шуток.
Комментарий недоступен
Большинство кода в любом проекте, существующем в реальных условиях, так и написано и ничего, работает.
Вспоминаю скриншот кода Андертейла, на котором был виден свитч на около 600 кейсов. Вообще всякие паттерны программирования и бест практики - это скорее для крупных разработчиков. Для индюков, как ни странно, парадигма YOLO-кодинга будет как раз, ведь важно хотя бы довести проект до рабочего вида хоть в каком-то виде.
А потом выкинуть его нахуй, потому как вносить изменения будет стоить второй жизни.
Все бест практики крупных разработчиков разбиваются, когда к тебе прибегает менджемент с криками "Хуле так долго/требования поменялись/И т.д." и ты с горящей жопой настраиваешь костыли.
Идеального кода в проде действительно не существует, потому что сейчас важна скорость разработки, а не то, насколько у тебя охуенный код. А быстрая разработка в большинстве своем это говнокод