MVC

    컨트롤러는 상태를 가지면 안된다.

    이번 글에서는 컨트롤러가 상태를 가지면 안되는 이유에 대해서 이야기해보고자 합니다. 서론 로또 미션을 진행하면서 다음과 같이 컨트롤러 내 인스턴스 변수로 발행한 로또와 당첨번호를 저장했었습니다. 피드백을 통해 이러한 방식에 문제가 있다는 사실을 알게 되었습니다. public class LottoController { private Lottos lottos; private LottoWinningNumbers lottoWinningNumbers; // ... } 컨트롤러와 모델의 차이점 위 방식에 문제가 있다는 사실을 알고 나서 문득 한가지 의문이 들었습니다. '컨트롤러가 왜 상태를 가지면 안될까? 그럼 모델이 상태를 가져져도 되는 이유는 뭐지?' 잠시 MVC 구조를 짚고 넘어가겠습니다. MVC에서 Mode..