나는 올해 새로운 회사로 이직했다. 회사가 진행하고 있는 프로젝트는 개발 시작한지 5개월이 되었고 이제 한 달 후 앱 출시를 앞두고 있다.
소스 코드를 분석하면서 어느 정도 분석이 끝난 부분들이 있으면 그 부분에 대해 요구 사항 구현 혹은 버그 수정 작업을 진행하면서, 그렇게 조금씩 프로젝트를 파악하고 있다.
작업을 진행해야 하는 것들 중에 하나가 사용자 로그아웃 시 상태 관리에 필요했던 컨트롤러(상태 관리를 위한 GetX Controller)의 상태 값들을 초기화하는 작업이 구현되어 있지 않아서 이 작업을 진행해야 한다.
일단 단순하고 편하게 드는 생각은
로그인한 사용자가 활동하면서 사용하는 상태 값들을 적당히 프로젝트에서 둘러보고 확인해본 다음
해당 컨트롤러에 상태 값 초기화 메서드를 구현하고
로그아웃 버튼 눌렀을 때 각 컨트롤러의 초기화 메서드를 호출한다.
였다.
하지만 이어지는 생각은.. 그렇다면 나는 정말 로그아웃할 때 초기화해야 하는 상태값들을 확실히 파악할 수 있을까? 알 수 있을까? 였다.
물론 규모가 엄청나게 큰 프로젝트는 아니기 때문에 콘트롤러 1~20 개 정도는.. 감수할 수 있..겠지..?
만약 사용할 상태값들을 설계하고 컨트롤러를 통해 구현하는 단계에서 각 상태값들에 대해 언제 초기화해야 하는지, 더 나아가 일종의 생애 주기를 어떻게 구상해야 하는지를 미리 정하고 설계한다면 배포 후 유지 보수 뿐만 아니라 개발 단계에서부터 생산성을 얻을 수 있지 않을까 라는 생각이 잠시 들었다.
로그아웃 시 상태 관리 초기화 로직을 구현하는 지금이라도 이러한 작업들을 ,, 최소한 해당되는 변수들을 모아 놓고 주석으로라도 표시해놓아야 좋을까 생각이 든다.
이에 대한 좋은 방법이 있을지 좀 찾아봐야겠다.