Здравствуйте, MadHuman, Вы писали:
MH>вместо свитча — будет try/catch. я бы сказал примерно одно и тоже.
Не будет там никакого try..catch, в этом суть. Просто вешается единожды написанная простенькая мидлвера. А вот твой Result придется явно протаскивать по всему коллстеку, загаживая код.
Еще раз — единственная фича исключений, ради которой их придумали — возможность абсолютно независимо от любого коллстека прервать выполнение и вернуть ошибку. И все это происходит абсолютно прозрачно для любого кода между источником и конечным обработчиком. А вот вариант с возвращаемыми кодами ошибок откатывает нас во времена до исключений, когда любой код приходилось специально под обработку ошибок затачивать. Особенно эротично это было в случае наличия колбеков. Вот есть некий библиотечный код, не твой. Ему на вход идет твой собственный колбек, в котором, внезапно, возникает ошибка. В случае с исключениями все работает, а вот что делать с кодами ошибок?
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>