Мое веб-приложение делает звонок REST. Если вызов будет успешным, он вернет объект «погода» json. Если вызов завершится с ошибкой, он вернет объект ошибки json.REST вызов может привести к двум различным объектам JSON. Какую модель дизайна я должен использовать?
Я хочу создать класс, который анализирует полученный JSON и возвращает объект Weather
, если вызов преуспел, и объект Error
, если вызов завершился неудачно.
Я думаю об использовании шаблона Factory, но я не уверен, что это хороший подход, потому что два объекта сильно отличаются друг от друга. Каков хороший способ разработки этого кода?
Проблема в том, что объект Weather является классом Model в моем шаблоне MVC. Я думаю, что это немного грязно, если я наследую от Response. –
@ W.K.S, это, безусловно, проблема. Это проблема реализации, но в первоначальном вопросе не указано, что уже были реализации Model или Response. Некоторая работа, которую я делаю, вносит ошибки в журнал (db) - и тем самым оправдывает, что объект Error также является объектами модели. – mbanzon
Я подумываю о создании класса «WeatherException» (позже я придумаю лучшее имя), содержащего все коды ошибок и сообщения. Таким образом, 'WeatherFactory' создаст объекты« Погода », если код будет успешным, но он создаст и выбросит« WeatherException », если код не сработает. Соответствует ли это шаблону Factory? –