Действительно, есть функции, которые знают о «нештатной» ситуации, сами обрабатывают её и выдают ожидаемый результат. Кидать исключение функция не должна. Например, функция фильтра значения, результат которой – отфильтрованное значение. Но на уровне выше бывает важно учесть, как функция отработала, например, учесть, что начальное значение было неверным. Здесь покажется, что удобней использовать коды возвраты, но их не будешь возвращать вместо значения. Тогда либо last_error() или через аргумент, переданный по ссылке (указатель). Но код ошибки мало информативен. На уровне выше нужно тогда знать все возможные коды ошибок. И здесь, я думаю, удобней возвратить вместо кода объект исключения (не кидая его), содержащий в себе всю информацию о «нештатной» ситуации. И тогда очень просто на уровне выше, либо строим логику, учитывая код/класс исключения, либо уже выкидываем это исключение.
Что скажете?
Сложность заключается в необходимости понять все предложения, разобраться что мне нужно и выбрать оптимальное. :) Как клиент, я не разбираюсь в технологиях, я не могу их сравнить, мне главное чтоб работало, подключалось без предоплаты и прозрачно для меня было.
И скажите, почему нету приема яндекс.денег?
Да, верно. За основу лучше брать модель делегирования. Её легко для конкретных задач превратить в классическое прототипирование.
Так что всё хорошо в Javascript с этим :)
Что скажете?
И скажите, почему нету приема яндекс.денег?
Так что всё хорошо в Javascript с этим :)