오늘은 드디어 Product 도메인 설계를 시작하기 시작했다. Product 개발에 앞서, 지난 Member 도메인을 개발하면서 받은 피드백 사항을 정리하고 기록했다.
내가 받은 피드백은, "테스트가 부족하다. 흐름(로직)에 대한 시퀀스다이어그램 추가하면 좋을 것 같다. PR의 단위가 너무 크다." 이다.
해당 부분들은 모두 납득하고, 이번 Product 도메인 개발 간 극복할 것이다.
이에 대한 더 자세한 계획은 프로젝트 Wiki에 작성해 두었다.
신발 주문 시스템 분석 도메인 : Member
shoes-ordering-system. Contribute to KEEMSY/shoes-ordering-system development by creating an account on GitHub.
github.com
그렇게 나는 Product 도메인 개발을 시작했다.
Product 개발
언제나 그렇듯, 코드를 작성하기 전, 요구사항을 정리하고 이에 대한 설계를 진행했다.
신발 주문 시스템 분석 도메인 : Product
shoes-ordering-system. Contribute to KEEMSY/shoes-ordering-system development by creating an account on GitHub.
github.com
Product 도메인의 요구사항 분석은 이미 전체 도메인에 대한 분석을 진행하면서 정리해 두었기 때문에 크게 어려운 부분은 없었다. 하지만 정리하는 것이 조금 시간이 걸렸다. 내가 설계하면 되는 것은 어떻게 해당 요구사항을 구현할지 정하는 것인데, 이것이 어려웠던 것 같다. (내 생각을 다 기록하고 싶은 욕심 때문인듯하다..)
나는 기본적으로 식별한 요구사항을 모두 구현하면서 발생할 수 있는 문제점들을 고민했다. 이 문제점들은 실제 서비스된다고 생각할 때, 발생할 문제점들에는 무엇이 있을까? 하는 고민과 경험에서 나온 문제점도 포함되어 있다. 해당 문제점들을 고민하는 것은 시간은 정말 순식간에 사라지고, 큰 결과물은 없는 것같아 조금 그렇지만, 정말 재밌다. 또 다른사람들은 이런 문제를 어떻게 해결할지, 다른 문제점들에는 무엇이 발생할 수 있을 것이라고 생각하는지도 궁금해진다.
오늘은 기본적인 Product Entity를 설계하고, 큰 틀을 구성했다. 커버리지가 정답은 아니지만, 커버리지를 100%를 목표로 다 검증해보자!
만들면서 배우는 클린 아키텍처
지금 나의 최고 관심사이면서 고민이되는 부분을 살살 긁어주는 이책은 내 많은 사랑과 관심을 뺏어가고 있다. 책의 마지막에는 항상 유지보수 가능한 소프트웨어를 만드는데 어떻게 도움이 되는지 정리가 있어 자꾸만 끝, 다음 끝 다음 끝.. 을 보게 된다. 그리고 무엇보다 지금 프로젝트에 적용하여 생각하게되어 너무 재밌다.
나는 책을 공부하면서, 프로젝트 패키지의 구조를 변경하기로 결정했다. 이것은 나에게 가벼운 결정은 아니다. 해당 패키지구조를 정하는 것도 상당한 고민과 시간이들었다. 어떻게해야 내가 겪었던 문제를 해결할 수 있을까? 에 대한 고민과 공부를 통해 해당 Member 패키지 구조를 갖게 되었다. 그런데 나는 패키지 구조를변경하기로 결심했다. 왜냐하면, 해당 패키지 구조는 내 프로젝트에 대한 기본 지식이 있으면 편리하지만(라고생각한다.), 처음 보는 사람들에게는 불편한 구조라고 생각했다.
처음 보는 사람에게 불편한 구조라고 생각한 이유는, 내가 클린아키텍처를 설명하고, 내 패키지 구조를 적용해서 설명하면서 불편했기 때문이다. 특히 포트 앤 어댑터 패턴인데, Member 패키지 구조는 이를 가시적으로 표현하지 못하는 패키지 구조라는 생각이 들었다. 그래서 지난 고민에 더해 패키지 구조를 변경하기로 결정했다. 그리고 해당 구조로 현재 개발을 하고있는데 어서 빨리 완성하고 비교하면서 다른사람들과 이야기를 해보고 싶다.
작년 이맘때가 요즘 많이 생각난다. 그 때도 날씨가 덥고 비가 와서 그런가싶으면서도, 취업에 고민을 정말 많이 했던 시기이기 때문에 더 기억이 나는 것 같다. 요즘에는 고민 때문인지 잠을 잘 못자는것같다. 고민할 시간도 아까운 요즘이다.
행운을 원한다면 과정에 뛰어들어라. 과정이 있어야 당신이 원하는 사건들이 벌어진다.
행운이 내게 오고있다 !!!!!! 아좌좌 !!!!!!!
'회고 > TIL' 카테고리의 다른 글
클린아키텍처, 유스케이스 구현하기 (0) | 2023.06.28 |
---|---|
Product 테스트 작성, 좋은 테스트에 관하여, Member 피드백 (0) | 2023.06.27 |
6월 마지막 주 주말, 클린아키텍처 공부 (0) | 2023.06.25 |
PR 작성, 피드백, 개선 (0) | 2023.06.22 |
작성하자.. 문서.. 기록하자.. 문서.. (0) | 2023.06.21 |