기능적 반응성 / 관계형 프로그래밍 – 차이점이 있습니까?


12

저는 현재 Cocoa 라이브러리와 함께 사용하기위한 Functional Reactive Programming API 인 Reactive Cocoa (GitHub) 를 사용하고 있지만 , 그 개념을 뒷받침하는 논문 인 "Out of the Tar Pit"을 읽었 습니다. 그리고 나는 약간 혼란 스럽다.

이 논문은 (사실 이해하는대로) 기능적 관계 프로그래밍을 제시하는데, 여기서 '사고'논리 량과 필요한 상태를 줄이기 위해 FRP 시스템에 의해 시행되어야하는 조건으로 데이터 간의 관계가 생성됩니다.

내 질문은이 두 가지 개념-FR (eactive) P와 FR (elational) P가 본질적으로 같은 것입니까 (전자는 후자의 구현 일뿐입니다) 또는 둘 사이의 핵심 차이점이 있습니까? 불행히도 현재 해당 지역에 대한 지식이 부족하여 충분히 차별화 할 수 없습니다.

차이가 있다면 이름에서 알 수 있듯이 데이터의 변화에 ​​반응하는 것과 관련이있는 것으로 보입니다. Reactive Cocoa (및 C #의 Rx)는 데이터의 변화에 ​​따라 트리거되는 신호 를 생성하는 개념을 가지고 있으며 시간이 지남에 따라 지속적으로 값을 수정하는 데 사용될 수 있습니다.

이것이 차이점입니까? 그렇지 않다면 무엇입니까?

(불량한 태그 지정을 실례합니다. 관련 태그를 찾을 수없고 아직 작성할 수 없습니다. 가능하면 태그를보다 적절한 것으로 업데이트하십시오.)


2
"타르 구덩이에서"는 기능적 반응성 프로그래밍의 개념을 나타내지 않습니다. 상태가 왜 해로운 지 이해하는 것이 좋습니다. 대부분은 순수한 FP, FRelP 및 FReaP에 적용됩니다.
Justin Spahr-Summers

답변:


5

반응은 관계형 모델을 포함하지 않고 변경을 전파 할 수 있습니다. C = A + B 변경 A 및 / 또는 B 및 C가 변경에 반응합니다 (그러나 같은 값으로 끝날 수 있음). P. 42

기능적 관계형 프로그래밍 (FRP16)의 접근 방식은 시스템의 필수 구성 요소 (논리 및 필수 상태)가 기능적 프로그래밍 및 관계형 모델을 기반으로한다는 사실에서 그 이름을 얻습니다 (그림 2 참조).

각주 16

기능적 반응성 프로그래밍 [EH97] 과 혼동하지 말아야 한다.이 접근법은 실제로이 접근법과 약간 유사하지만 관계 또는 관계 모델에 본질적인 초점이 없다


아 알 겠어요 내가 언급 한 반응 형 프레임 워크와 함수형 관계 프로그래밍 (Functional Relational Programming)과 많은 교차가있는 것 같습니다. 물론 몇몇 개념이 있지만, 두 번째 논문의 행동과 사건에서 신호 개념을 이끌어냅니다.
danpalmer

3
크로스 오버는 대부분 순수한 FP 수준에 있습니다. 관계형 및 반응성 패러다임은 실제로 공통점이 많지 않습니다.
저스틴 스파 어-여름
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.