스프링/미션

[Spring] lotto - 기능 구현 목록 작성에 대한 중요성

문상휘파람 2024. 10. 2. 01:57

사실 저는 코드를 작성할 때 일단 시작하고 보는 편입니다.

 

일단 시작을 하게되면, 그 다음에 어떤식으로 코드를 구현해야 할 지 마구 마구 떠올거든요.

그렇기에 기능 구현 목록 작성에 대한 중요성을 깨닫지 못했어요. 물론 "기능 구현 목록 작성이 중요하다", "순서를 다지는 것이 중요하다" 라는 말은 많이 들어왔지만 실제로 저에게는 와닿지 않았습니다.

 

하지만 이번 Lotto 미션을 진행하며 완전히 생각이 바뀌게 되었습니다!! 

 

처음 Lotto 미션 기능 구현 목록을 보았을 때, 어떤 도메인 로직을 작성해야 할 지 감 조차 잡히지 않았습니다. 당연히 Lotto 객체를 만들어 Lotto를 관리해야된다는 것은 알았지만 세세하게 어떤 부분을 어떻게 구현하는게 좋을지 막막했습니다.

 

그래서 저는 무작정  API 명세서를 작성하기 시작했습니다.

API 명세서

 

위 사진이 제가 작성한 API 명세서 목록 중 하나인데, 어떤 기능을 구현할지 적었고 이 기능을 어떻게 구현할 것인지 작성 방식도 같이 작성하였습니다.

 

이렇게 작성하고 나니, 막막했던 도메인 로직을 어떻게 구현하면 좋을지 생각이 들었습니다 ㅋㅋㅋ... 정말 신기했어요. 

딱 이 시점에서 왜 기능 구현 목록을 작성하라는지 깨달았습니다..!

 

도메인 구현 목록

 

바로 위에 보이는 사진이 API 명세서를 작성한 이후, 작성한 도메인 구현 목록입니다.

 

어떤 기능을 인터페이스로 처리하고 관리할지, 어떤 객체들을 생성해야 할 지 등등 도메인 기능 구현 목록을 세세하게 정리하였습니다.


이번 기회를 통해 기능 구현 목록의 중요성을 깨달았습니다.

항상 기능을 구현하기 전, 기능 구현 목록 작성을 통해 작업의 효율성을 높이고 싶습니다. 또한 저만의 기준도 만들고 싶습니다. ㅎㅎ

화이이이팅