Skip to content

[편의점] 김연서 과제 제출합니다#3

Open
daeGULLL wants to merge 27 commits intoJava-JavaScript-Language-Stuty:mainfrom
2025JavaGroupStudy:yeunsuh
Open

[편의점] 김연서 과제 제출합니다#3
daeGULLL wants to merge 27 commits intoJava-JavaScript-Language-Stuty:mainfrom
2025JavaGroupStudy:yeunsuh

Conversation

@daeGULLL
Copy link
Copy Markdown

@daeGULLL daeGULLL commented Apr 3, 2025

프로그램 확장성과 코드 재사용성을 고려해서 설계했습니다.

전체적으로 짜임새가 괜찮은지 리뷰받고 싶습니다.
특히 appconfig에서 제가 mock test를 위해 짠 패턴은 GPT 선생도 배웠다며 코멘트했는데 어떤지 한번 봐주십셔

뒤늦게 냈지만...아무래도 첫 완성한담에 맘 안들어서 리팩토링하다 미뤄졌네유 피드백 해주실 분들 부탁드립니당

1000000329.jpg

코드가 길다 보니 구조도 첨부합니당

daeGULLL added 27 commits March 3, 2025 18:13
resource directory를 읽어 초기설정하는 서비스 추가
디렉토리 이동 및 로직 수정
기능목록 1번
기능목록 1번
repository 관리, 테스트를 위해 interface 상속으로 구조 변경
…Service

상품 생성만 담당하는 서비스를 전체 편의점 생성으로 변경

기능목록 4번
- FileReadTool : Resource에서 값을 String으로 값을 읽어옴
- Parser : 적절한 타입 변환 담당

기능목록 4번
User, UserRepository, UserService

추후 확장성을 고려해 설계

기능목록 3번
SystemConstantVariable
SystemMessage
ErrorMessage
5dcca0a 커밋으로 인한 Validator 제거

기능목록 9, 10번
- InputProvider Interface 설계
- DefaultInputProvider : 기본 실행용 Provider
- InputView : InputProvider 받음

기능목록 6번
5dcca0a 커밋과 연관, 형식에 따라 값 분해 및 조립
리포지토리 상호작용을 담당하는 service
사용자의 구매 행동을 총괄하는 서비스
- Pair : c++의 Pair와 동일, 자바로만 구현해둔 것
- CheckPromotionDTO : 구매에 따른 재고 변경을 위한 dto
구매 시 재고차감 로직이 없길래 수정
InputView에 test시 inject할 provider
테스트를 고려한 testRun 메서드
breakpoint 설정 가능
GPT선생도 배웠다한 MockSetting 기능이 있읍니다.
테스트에 관련된 객체를 생성해 주입할수 있게 만듦.
설계한 프로그램이 기존 테스트 코드와는 호환되지 않아 약간 수정함
전에 디버깅용으로 넣어뒀던 println메세지를 삭제안했어서 했읍니다.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant