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

Exception 처리 #22

Closed
ScottSung7 opened this issue Aug 3, 2024 · 3 comments
Closed

Exception 처리 #22

ScottSung7 opened this issue Aug 3, 2024 · 3 comments
Assignees

Comments

@ScottSung7
Copy link
Collaborator

ScottSung7 commented Aug 3, 2024

내용

  • 과제 1: Runtime Message로만 처리 하지 않고 다른 로직으로 처리하여 보기. (Retry 등)
@ScottSung7
Copy link
Collaborator Author

과제 2: 클라이언트에 보낼 메시지와 개발팀에 보낼 메시지 분리하기.

@ScottSung7
Copy link
Collaborator Author

과제 3: RuntimeException을 상속하는 InfraException을 Throwable상속하도록 변경하기.

@ScottSung7
Copy link
Collaborator Author

ScottSung7 commented Nov 19, 2024

Issue 1. 예외는 줍지 말기 (7/31 멘토링)

  • 해당 메서드에서 잡을 수 있는 예외는 잡아야 한다.
  • Checked Exception이 있는 경우 Unchecked Exception으로 변환해서 조금 더 익숙한 방법으로 넘겨 줄 수 도 있다.
  • https://techblog.woowahan.com/2606/
  • Q. 왜 체크드 익셉션은 트라이 캐치를 반드시 하게 문법을 만들었고 런타임 익셉션은 왜 아닐까?

Issue 2. HTTP status (7/31 멘토링)
HTTP Status를 Exception에서 넘겨주도록 할때, 다른 프로토콜에서 사용이 어려워 질 수 있다.

Issue 3. 도메인 익셉션 (8/7 멘토링)

  • 예상가능한 장애의 경우는 개발자가 예상가능해서 몰라도 되기에 주기위해 (Exception Advice를 통해서) 도메인 익셉션을 사용하고 장애가 날 법한 것은 개발자에게 노티를 주기 위해 Exception으로 처리.
  • 알려주어야 하는 것과 아닌 것. 알려주지 않아도 되면 도메인 익셉션 처리해도 된다.
  • 예상 못한거는 500, 예상한거는 400 이렇게 할 수도 있다.

Issue 4. 멀티모듈에서 예외 (8/7 멘토링)

  • 멀티 모듈시는 의존을 하던지 common module을 만들던지 각자의 예외를 만들어서 사용한다.

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

No branches or pull requests

1 participant