19

Я действительно не вижу разницы между ними. Они оба касаются данных, проходящих через инструкции и распространения изменений во входных данных. Я читал this book (authored by Matt Carcki), и он ясно говорит, что они оба одинаковы. С другой стороны, wikipedia устанавливает реактивное программирование как форму программирования потока данных и делает это также this stackoverflow answer.В чем разница между программированием потока данных и реактивным программированием?

Итак, какова концептуальная разница между реактивным программированием и программированием потока данных?

+0

Я думаю, что этот вопрос основан на мнениях, и ваши ссылки являются доказательством этого. Это действительно вопрос определения, вики, похоже, ассоциируют «реакцию» с мгновенным обновлением графика потока данных. – kabanus

ответ

0

Реактивное программирование - это форма программирования только для потока данных. Но ее также парадигма, которая ориентирована вокруг распространения изменений наряду с потоками данных

Как пример, приведенный на Wiki Page

а: = Ь + с будет означать, что в настоящее время присваивается результат Ь + с, в момент вычисления выражения, а затем значения b и c могут быть изменены без влияния на значение a. Однако в реактивном программировании значение a будет автоматически обновляться всякий раз, когда значения b и c изменяются, без повторного выполнения программы a: = b + c.

В чем основное отличие между ними. Он связывает переменные с выражением, и система реагирует на изменения в переменной, не повторяя выражения снова и снова.

+0

Мне кажется, вы описываете разницу между императивным и реактивным/потоком данных, а не потоком данных и реактивными –