본문 바로가기

상태3

객체지향의 사실과 오해 - 객체란 무엇인가 - 이 글은 조영호의 객체지향의 사실과 오해를 기반으로 작성되었습니다. (가능하면 꼭 읽어보는것을 추천드립니다.) - 엘리스와 객체지향의 공통점 저자는 객체지향을 설명하기 위해 이상한 나라의 앨리스 이야기를 예시로 들고 있다. 사실 나는 이상한 나라의 앨리스를 읽어보진 않았지만 그래도 이해하는데 전혀 무리가 없도록 자세히 설명해주고 있다. 엘리스는 아름다운 정원으로 들어가기 위해 많은 노력을 한다. 그 과정에서 음식을 먹거나 부채질을 하면 키가 변하는 이상현상을 겪게 된다. 그리고 이를 이용해 키를 변화시키면서 목표했던 아름다운 정원에 들어가게 된다. 엘리스의 키나 현재위치는 상태라고 볼 수 있다. 엘리스의 상태가 변하는것은 케이크를 먹거나 부채질을 하는 등의 행동을 했기 때문이다. 또한 현재 상태에 따.. 2021. 8. 9.
행동 패턴 - 상태(State) - 참조: https://refactoring.guru/design-patterns/state - 참조: GoF의 디자인 패턴 - 상태(State) 패턴 상태 표현 객체(Object for state) 라고도 불리우며, 객체 내부의 상태가 변할 때 자신의 행동을 대체할 수 있도록 하는 패턴이다. 마치 객체가 자신의 클래스를 바꾸는것처럼 동작한다. - 문제점 상태 패턴은 대학교때 컴파일러 수업을 들었다면 자세한 내용이 기억나지는 않더라도 들어봤을법한 유한 상태 기계(Finite-State Machine)의 개념과 깊은 연관성이 있다. 메인 발상은 어떤 순간에 프로그램에서 존재하는 상태의 수가 유한하다는 것이다. 특정 상태 마다 프로그램은 모두 다르게 동작하며, 하나의 상태에서 다른 상태로 즉시 전환된다. .. 2021. 6. 19.
UML - 상태 기계 다이어그램 - 내부 액티비티와 상태 - 이 글은 UML Distilled (마틴 파울러)책을 기반으로 작성하였습니다. - 상위 상태: https://8thlight.com/blog/micah-martin/2007/04/07/understanding-statemachines-part-4-superstates.html - 내부 액티비티 이전글에 상태 기계 다이어그램에서는 기본적인 요소들과 주로 상태간의 전이를 중심으로 알아보았다.(ocwokocw.tistory.com/67?category=844459) 전이를 통한 상태변화가 대부분의 경우겠지만 이벤트 발생시 전이 없이 반응하는 경우도 있다. 이때 내부 액티비티(internal activity)를 사용하는데, 상태 상자 속에 이벤트, 가드, 액티비티를 넣는다. 위의 그림은 문자 입력과 도움말에.. 2021. 2. 12.