Здравствуйте, Mazay, Вы писали:
M>Пишу приложение, работающее по простенькому пакетному протоколу.
M>Можно ли здесь обойтись без опасных хаков и жуткого синтаксиса? Может ещё как-нибудь архитектуру перевернуть?
На предыдущем проекте убедился, что для сетевого приложения, работающего по некоторому протоколу с состояниями, хорошо подходит конечный автомат, или иначе State Machine (если работа по протоколу главная задача приложения). Если не нравится решение через switch, можно применить паттерн State (Gof). Я вначале не автомат применил, столкнулся со сложностями, которые сами собой решились, когда переделал все на автомат.