상태는 결국 데이터이다(from1). 상태가 무엇인지를 직관적으로 이해하기 위해 아래 웹 페이지에서 이용자가 좋아요 버튼을 누르고 나면 추가적인 버튼 입력을 저지해야 한다고 생각해 보자.

버튼을 클릭하기 전

버튼을 클릭하기 전

버튼을 클릭한 이후

버튼을 클릭한 이후

유저가 버튼을 클릭하는 행동을 하면, 유저가 버튼을 눌렀음을 기억하고 추가적으로 버튼을 클릭하지 못하도록 버튼을 클릭한 상태로 전환되어야 한다. 디자인 패턴(Design pattern)은 결국 상태를 더욱 잘 관리하기 위함이다. 따라서 상태를 관리하는 일은 디자인 패턴과 밀접한 연관이 있다.

웹 애플리케이션 등에서 GUI 의 상태들을 잘 제어하기 위한 방법론을 상태 관리(State management) 라고 부른다(참고1). 이러한 상태 관리 또한 데이터를 관리하는 방법이라는 점에서 디자인 패턴과 밀접한 연관이 있을 수밖에 없다.


parse me : 언젠가 이 글에 쓰이면 좋을 것 같은 재료들.

  1. None

from : 과거의 어떤 생각이 이 생각을 만들었는가?


supplementary : 어떤 새로운 생각이 이 문서에 작성된 생각을 뒷받침하는가?

  1. None

opposite : 어떤 새로운 생각이 이 문서에 작성된 생각과 대조되는가?

  1. None

to : 이 문서에 작성된 생각이 어떤 생각으로 발전되고 이어지는가?

  1. bc1_2. title: 컴포넌트 구조에서 모델-뷰-컨트롤(MVC) 패턴을 어기고 양방향 바인딩을 이용하다 보니, 프로퍼티 내려꽂기(Props drilling) 문제와 이벤트 버스(Event bus)로 주고받는 데이터의 추적이 어려워져 복잡성이 배가 되었다. 이러한 복잡성을 덜기 위해 중앙집중식으로 상태를 관리하는 디자인 패턴이 등장했고 그것이 플럭스패턴이다.