Redux의 원칙을 OO 언어에 적용하는 것이 합리적입니까?


9

Redux는 본질적으로 기능적 프로그래밍이며 많은 의미가 있습니다. 다른 프로젝트에서 Javascript가 아닌 OOP 언어로 되돌아 가면서 단일 상태 객체, 해당 상태의 일부에 작용하는 감속기, 상태를 수정하는 의미 론적 비즈니스 계층과 같은 동일한 원칙을 적용하고 싶습니다.

내 프로젝트는 C ++에 있으며 응용 프로그램 디자인에 기능적인 redux 스타일 접근 방식을 적용하고 적용하는 것이 타당한 지 알고 싶습니다. 이 앱의 성능은 매우 중요하지 않지만 유지 관리가 중요합니다.

이런 식으로 앱을 디자인하는 데 어떤 어려움이 있습니까?


나는 이것이 GUI 앱이 아니라고 덧붙여 야한다. 그리고 더 많은 것을 생각하면 redux는 응용 프로그램 상태 업데이트의 직접적인 시각적 효과가 없기 때문에 GUI가 아닌 응용 프로그램의 이점을 줄였습니다.


redux 일을 한 사람은 ES6 구현을 가지고 있으며 본질적으로 객체 지향 Javascript라고 말합니다.
Robert Harvey

1
나는 얼마 전에 자바에서 이것을하는 것을 보았습니다. 당신은 그것을 작동시킬 수 있습니다; Java 8 및 C ++ 11은 최소한 Javascript만큼 "기능적"입니다. 그러나 정적 유형 시스템은 일을 추악하게 만들 수 있습니다. 결코 GUI로 제한되지 않습니다. Redux의 접근 방식은 Clojure가 GUI와 전혀 관련이없는 동시성 상태를 관리하는 방법과 매우 유사합니다.
Torisuda

답변:


5

기능적인 프로그래밍 스타일은 올바른 사고 방식으로 어느 곳에서나 다소 재사용 가능한 경향이 있습니다. 패러다임 크로스 언어를 적용한다는 일반적인 아이디어는 코드 완성에서 Steve McConnell이 "언어 프로그래밍"이라고 언급 한 것입니다. 나는 주로 외국어와 상호 패러다임에서 배운 교훈을 적용하려는 욕구가 언어를 표현 매체로 보는 사람의 표식이라고 지적하고 싶었다. 이 시점에 도달하지 못한 개발자 수는 놀랍습니다.

지적했듯이 Redux의 철학은 UI 개발을 목표로합니다. 상태의 델타 추적이 UI가 아닌 환경에서 유용한 시나리오를 너무 많이 구상하기는 어렵습니다. 그래도 문제에 달려 있습니다. 이 접근 방식을 통해 전체 솔루션을보다 쉽게 ​​이해하고 유지 관리 할 수 ​​있다면 좋은 방법 일 것입니다. Redux가 취하는 일반적인 접근 방식은 대부분의 RDBMS에서 트랜잭션 저널처럼 느껴지므로 JavaScript 이전에 접근 방식이 존재했을 수도 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.