Рассмотрим веб-форму с раскрывающимся списком. В зависимости от выбора в раскрывающемся списке отображаются некоторые параметры - не так много, скажем, два или три для каждого выбора. Когда пользователь нажимает кнопку ОК, сервер создает новый объект, тип которого определяется раскрывающимся списком, атрибуты из соответствующих параметров.
Таким образом, сервер должен сделать три вещи на основе выпадающего списка: отобразить некоторые данные; получить некоторые данные и создать объект соответствующего типа. Не могли бы вы использовать здесь три оператора case или создать класс AObjectCreator, который можно соответствующим образом разделить на подклассы для каждого выбора в раскрывающемся списке?