В большинстве случаев я согласен с вами в использовании альтернатив для переключения. Забыть оператор break могут даже опытные разработчики, и иногда требуется больше времени, чем нужно, чтобы заметить, что «перерыв» отсутствует. Но объектный подход (или похожие подходы) обычно не имеет сквозной опции, которая в некоторых ситуациях является именно тем, что вам нужно. Как насчет того, чтобы вернуть один и тот же смайлик для нескольких клавиш? При объектном подходе вы либо повторяетесь, либо используете не встроенную функцию.