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

[MVC 구현하기 - 3단계] 망고(고재철) 미션 제출합니다. #605

Merged
merged 7 commits into from
Sep 26, 2023

Conversation

Go-Jaecheol
Copy link

안녕하세요 모디!
2단계에 이어 3단계도 가지고 왔습니다 :)

미션 3단계 요구 사항인

  1. JspView 클래스를 구현한다.
  2. JsonView 클래스를 구현한다.
  3. Legacy MVC 제거하기

에 맞게 JspViewJsonView 클래스를 마저 구현했고, 모든 컨트롤러를 어노테이션 기반으로 변경했습니다.
그리고 asis 레거시 패키지를 삭제하고, tobe 패키지 내 클래스들도 상위 패키지로 이동한 뒤 삭제했습니다.
이전 PR에서 나눴던 얘기에 이어서 마침 요구 사항에 DispatcherServlet 클래스 패키지 이동이 있길래 이것도 수정했습니다!

마지막 리뷰도 잘 부탁드립니다 🙇‍♂️

@Go-Jaecheol Go-Jaecheol self-assigned this Sep 25, 2023
Copy link

@jaehee329 jaehee329 left a comment

Choose a reason for hiding this comment

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

안녕하세요 망고~~

역시 짧은 시간 안에 3단계 잘 구현해주셨네요~~!!
2단계에서 섞여있던 모듈 간 의존이 3단계로 오면서 훨씬 깔끔해서 보기가 좋네요!

요구사항은 만족해서 그냥 머지되어도 될 것 같지만
JspView가 Redirect 처리를 하는 부분까지만 멋있게 처리해보시면 어떨까 기대가 되어 Request Change를 눌러버렸습니다 ㅠㅠ
망고는 멋있으니까 한 시간이면 할 것 같습니다 👍

Comment on lines 25 to 28
if (viewName.startsWith(JspView.REDIRECT_PREFIX)) {
response.sendRedirect(viewName.substring(JspView.REDIRECT_PREFIX.length()));
return;
}

Choose a reason for hiding this comment

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

Redirection 관련 처리가 JspView가 아닌 추상화된 다른 단계에서 처리되면 어떨까요?
JspView에는 Jsp rendering 관련 책임만 가질 수 있도록요!

Copy link
Author

Choose a reason for hiding this comment

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

RedirectView라는 추상 클래스를 만들어서 해당 클래스의 render() 메서드에서 redirect 관련 처리를 하고, JspViewRedirectView 추상 클래스를 상속해서 rendering 관련 처리를 추가하도록 수정해봤습니다..!

제가 제대로 이해하고 한 건지 모르겠네요 하하,,

Copy link

@jaehee329 jaehee329 left a comment

Choose a reason for hiding this comment

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

오 구조가 아주 깔끔해진 것 같아요!
스프링 내부에서도 다단계로 View를 추상화하면서 책임을 나눠 가지고 있더라구요
역시 책임 분리 잘 하시네요!
미션 요구사항은 당연하고 추가적으로도 구현 너무 잘 하신 것 같아 머지하겠습니다!!
바쁜 일정 속에서도 MVC 미션 고생 너무 많으셨어요~!!!

@jaehee329 jaehee329 merged commit 66001c1 into woowacourse:go-jaecheol Sep 26, 2023
1 check failed
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.

2 participants