State 패턴
[네이버 지식백과]state 패턴 (쉽게 배우는 소프트웨어 공학, 2015. 11. 30., 한빛아카데미(주)) 스테이트 패턴은 좀 헷갈리는 부분이 있습니다. 대부분의 패턴은 if 문과 같이 버그를 유지보수나 버그를 양산하기 쉬운 코드를 없애고 확장하기 쉽게 하도록 구조를 가져갑니다. 이중 스테이트 패턴은 각 상태가 바뀔 때 마다 늘어나는 if문을 없애는 패턴입니다. 즉 상태들 끼리 서로의 상태를 바꿔가며 동작하기 때문에 유지보수도 쉽고 확장도 용이합니다. 그러나 상태변화에 대한 명확한 이해와 구조를 어떻게 가져가야 할지에 대한 고민이 필요합니다. 다소 생소하게 보일지 모르지만 한번 구현해 보도록 하겠습니다.예제는 아주 단순한 불을 끄고 켜고하는 기능을 스테이트 패턴으로 구현해 보았습니다. 실제로 구동해..