programing

플럭스+리액트 vs 백본+ 반응

fastcode 2023. 3. 31. 22:54
반응형

플럭스+리액트 vs 백본+ 반응

Backbone+React에 비해 Flux+React의 장점은 무엇입니까?복잡한 코드 기반에 대한 코드 개발 용이성 외에도 성능 차이가 있습니까?

Backbone+React를 사용하는 애플리케이션에서 모델과 리액트 뷰 사이에 1:1의 관계가 있으면 어떻게 됩니까?

플럭스는 React 애플리케이션을 구축하기 위한 설계 패턴입니다.따라서 저장소의 Backbone 모델과 컬렉션을 사용하여 데이터를 가져오고 저장할 수 있습니다.

또한 React의 Virtual DOM 기능만 사용하려면 react.js를 사용할 필요가 없습니다.가상 DOM 기능을 애플리케이션에 추가하는 라이브러리가 많이 있습니다(https://github.com/Matt-Esch/virtual-dom)).

권장사항: 플럭스 패턴을 사용하는 경우 http://facebook.github.io/immutable-js/을 사용하는 것을 강력히 권장합니다(동형 어플리케이션을 구축하고 있는 경우 http://ampersandjs.com/;과 함께 사용할 수 있습니다).기본적으로 백본모델을 React와 함께 사용하는 장점은 없습니다(백본모델은 무겁고 언더스코어가 필요하며 속도가 느립니다.대신 https://lodash.com/을 사용합니다).

IMHO 플럭스 스토어는 Backbone 모델/컬렉션과 호환되지 않습니다.Backbone 컬렉션을 Flux 디스패처와 통합하고 이벤트를 내보내 렌더링을 트리거할 수 있는 한 Backbone 컬렉션을 Flux 저장소로 사용할 수 있습니다.

Backbone 모델이 원래 불변의 데이터 구조인지 잘 모르겠기 때문에 React가 렌더링을 최적화하기가 더 어렵습니다.

또, 이러한 Backbone 모델/수집 방법이 실제로 도움이 되는 경우는 없었습니다.플럭스 아키텍처에서 API 요청은 스토어가 아닌 액션 크리에이터에 의해 실행되는 경향이 있기 때문에 여러 스토어가 동일한 요청 완료를 들을 수 있습니다.

플럭스 앱에서 어디에 아약스 요청을 해야 합니까?

React의 장점 중 하나는 독립적이라는 것입니다. Backbone 모델 및 컬렉션에서 문제 없이 사용할 수 있습니다.

플럭스는 권장 아키텍처이지만, 이 모델은 MVC로 크게 분산되어 있기 때문에 결국 두 가지 모두를 사용할 필요가 없다고 생각합니다. 즉, 플럭스와 함께 반응하거나 Backbone 모델과 컬렉션과 함께 반응하거나 둘 다 사용할 필요가 없습니다.

Backbone 모델/컬렉션과 Flux 스토어를 함께 사용하는 것은 권장하지 않습니다.그것은 같은 것이 아닙니다.플럭스 스토어는 외부로부터 변이할 수 없기 때문에 세터를 제공하지 않기 때문입니다.플럭스 스토어는 액션에 대응하여 자신의 상태를 변환합니다.또한 Backbone 모델을 스토어로 사용하는 "Flux" 방식을 따르더라도 다른 팀원들이 악용할 수 있는 스토어 외부에서 직접 상태를 조작할 수 있는 가능성이 여전히 열려 있습니다.

Backbone의 모델 컬렉션은 불변이라는 주제에 대해 반응하는 동안에도 변형이 가능합니다.기술적으로는 Backbone+React를 사용하여 Anti Pattern을 실행하고 있습니다.react+backbone과 react+flux를 모두 사용해 보았습니다.리액션+플럭스를 남들보다 더 선호합니다.

+1 백본과 아키텍처 패턴의 통합에 관한 Vetrenko Maxim의 답변.플럭스는 React 앱의 데이터 흐름 패턴이며 원하는 모든 데이터스토어/모델 프레임워크를 사용할 수 있습니다.

Flux+React를 사용하는 장점:

  • 데이터 흐름의 이해 용이화
  • 코드 구성 향상
  • 모델을 사용하여 데이터 문제를 보다 쉽게 디버깅할 수 있습니다.
  • 데이터스토어/모델 코드를 뷰에서 구분

사용할 수 있는 모델 프레임워크가 몇 가지 있습니다.React+Flux는 www.js-data.io을 선호합니다.

플럭스는 데이터의 단방향 흐름을 강제하는 아키텍처 패턴입니다.플럭스 패턴은 일반적이며 리액트 애플리케이션에 한정되지 않습니다.Flux를 사용하면 데이터 흐름이 잘못 정의되고 데이터 무결성이 떨어지는 것을 방지할 수 있습니다.

Backbone을 선택할 경우 Flux 방식과 Backbone 방식을 사용할 타이밍만 알고 있으면 이 두 가지를 조합할 수 있습니다.

언급URL : https://stackoverflow.com/questions/28815101/fluxreact-vs-backbonereact

반응형