Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Step4] 수강신청(요구사항 추가) #149

Merged
merged 31 commits into from
May 31, 2023
Merged

Conversation

moto6
Copy link

@moto6 moto6 commented May 30, 2023

[Step4] 수강신청(요구사항 추가)

  • 안녕하세요 리뷰어님 step4 수강신청(요구사항 추가) PR 올립니다.



🎯 이번 미션에서의 요구사항을 정리해봤습니다

  • 기능적 요구사항 정리

    • 강의상태의 속성이 4단계로 세분화된다 : 준비중, 모집중, 진행중, 종료
    • 각각의 강의상태 마다 모집상태 속성을 추가로 갖는디 : open / closed
    • 일부 강의는 선발된 인원만이 수강할 수 있다 : 우아한테크코스(무료), 우아한테크캠프 Pro(유료)
    • 수강 승인 기능이 필요하다 : 강사는 수강신청한 사람 중 선발된 인원에 대해서만
    • 수강 취소 기능이 필요하다 : 수강신청한 사람 중 선발되지 않은 사람
  • 비기능적 요구사항 정리

    • DB 테이블에 데이터가 존재한다는 가정하에 리팩터링 : 기존에 쌓인 데이터를 제거하지 않은 상태로 리팩터링해야한다
    • 점진적으로 리팩토링하기 / 스트랭글러 패턴 사용 : 리팩터링할 때 컴파일 에러와 기존의 단위 테스트의 실패를 최소화
  • 이외

    • step2, step3 에서 피드백 받은 부분들중에서 반영이 잘 안됬거나, 미흡해진 부분이 있는지 점검한다
    • 피드백 받은 부분중에서 처리하지 못한게 있다면 문서화한다



😀 이상입니다!

  • 이번 미션의 마지막 PR 이네요..! 좋은 피드백 많이 남겨주셔서 감사합니다..!!!

moto6 added 30 commits May 30, 2023 09:40
Copy link

@brainbackdoor brainbackdoor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

피드백 반영 및 4단계 미션 진행하느라 고생 많으셨어요~ 👍🏻
이번 TDD 과정이 성장에 의미있는 시간이셨길 바래요~

Comment on lines +5 to +17
PREPARING(SessionRecruitStatus.OPEN),
RECRUITING(SessionRecruitStatus.OPEN),
IN_PROGRESS(SessionRecruitStatus.OPEN),
CLOSED(SessionRecruitStatus.CLOSED);

private final SessionRecruitStatus sessionRecruitStatus;

SessionStatus(SessionRecruitStatus sessionProgressStatus) {
this.sessionRecruitStatus = sessionProgressStatus;
}

public boolean isRecruitStatus() {
return this.sessionRecruitStatus == SessionRecruitStatus.OPEN;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이번 단계는 교살자 패턴을 학습해보는 것이 핵심입니다~
바로 로직을 변경하기 보다 중간 단계에 디비에서 2가지 데이터를 모두 가지고 있는 것을 허용하며 점진적으로 마이그레이션 하는 연습이에요.

Copy link

@brainbackdoor brainbackdoor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

피드백 반영 및 4단계 미션 진행하느라 고생 많으셨어요~ 👍🏻
이번 TDD 과정이 성장에 의미있는 시간이셨길 바래요~

@brainbackdoor brainbackdoor merged commit 5a37012 into next-step:d-h-k May 31, 2023
1 check passed
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.

None yet

2 participants