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

[20210121] Java - 객체 모델링 방법, Validation(유효성검사), 테스트 코드 #17

Open
JuHyun419 opened this issue Jan 21, 2021 · 0 comments

Comments

@JuHyun419
Copy link
Owner

JuHyun419 commented Jan 21, 2021

객체 모델링 방법

  • 시작은 객체 모델을 수정 불가능 하도록 Immutable 상태로 시작(final 키워드)
  • 객체 모델에 필요한 행동(Method, 행위)이 무엇인지 고민하고 점진적으로 Immutable 상태를 없애나간다.
  • (이펙티브자바 아이템 10~12)equals, hashcode, toString 등의 메서드 구현은 꼼꼼하게 하자!
  • (이펙티브자바 아이템 11)equals가 참이라면 hashcode의 결과도 참이어야 함(반대는 성립하지 않음)
  • 불필요한 생성자 노출 X
  • (이펙티브자바 아이템 2)생성 인자 갯수가 많아질 경우 -> 빌더(Builder) 패턴 고려(이펙티브 자바 참고)

Validation(유효성 검사)

  • 유효성검사는 정말 정말 중요함!!(그동안 간과했던 부분..)
  • 스프링의 라이브러리를 사용하든, 구글의 Guava를 사용하든 중요하지 않음!
  • ★★★ 가능한 모든 사용자 입력은 유효성 검사를 실시할 것!!!
    1. Model 생성자 2. Service 레이어 3. Controller 레이어

테스트 코드

  • 테스트 코드를 작성할 때는 다음 사항을 고려할 것
  • 무엇을 테스트 해야할까??
  • 어디까지 테스트를 해야할까??

참고

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant