Функции без побочных ефектов

Обсуждаем, как правильно строить приложения
Ответить
KEFIR4UK
Сообщения: 97
Зарегистрирован: 2014.12.13, 16:24

Функции без побочных ефектов

Сообщение KEFIR4UK »

Добрый времени суток. По второму кругу читаю книгу Ерика Еванса по DDD и вот наткнулся на такое понятие как "Функции без побочных ефектов". Суть понятия я то приблизительно понял, но примеры которые приведены в книге мне не понятны
Скаже есть три класса:
1) Foo и метод init();
1) Bar и метод run();
1) User и метод save();
Допустим метод init() это функция с побочными ефектами ее вызывает метод run() класа Bar а его в свою очередь метод save() класа User.
Вопрос в том как узнать методу save что метод init() это функция с побочными ефектами?
В Книге пишеться о Assertion что то на подобии шаблона спецификации но как его применять чтобы узнать являеться метод функцией с побочными ефектами или нет не совсем понял.
Буду признателен за разъяснение или кусок кода который прояснит это все.
KEFIR4UK
Сообщения: 97
Зарегистрирован: 2014.12.13, 16:24

Re: Функции без побочных ефектов

Сообщение KEFIR4UK »

Насколько я понял, проблема решается через тестирование.
Нашел интересную статью которая проясняет немного ситуацию https://laravel.ru/posts/147
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Функции без побочных ефектов

Сообщение zelenin »

ты бы цитаты приводил, чтобы контекст был понятен.
Ответить