콘텐츠로 이동

2021 03 14

2021-03-14

블랙잭 미션 2단계 피드백

  • 메서드가 모두 static으로 이루어진 클래스는 private으로 생성자 닫아두자
  • 객체 생성에 대한 검증 로직을 생성자와 정적 팩토리 메서드 중에서 어디서 해야할까? 장단점은? - 내 답변: https://github.com/woowacourse/java-blackjack/pull/193#discussion_r593838481 - 생성자 - 우선 여기서 해주니까 static 하게 함수를 선언하지 않아도 되네 - static 하게 함수를 정의해 주는게 무슨 단점이 있을까? - 메모리를 할당 받고 프로그램 종료 시점에 반환되므로 사용하지 않고 있어도 메모리가 할당되어 있음 - 디버깅도, 테스트도 어렵다고 하네... - static 그래도 장점도 있겠지 - 객체 생성없이 변수 접근/메서드 실행이 가능해 속도가 빠르다 - JVM이 클래스를 읽어 들일때 자동적으로 메모리에 적재 - 캡슐화/은닉성에 대한 측면으로 바라보자... - 이게 결국 validation이 객체가 인스턴스화 될 때 필요한 과정인거자나?
  • DealerMoney와 PlayerMoney를 굳이 나눴어야 했나? - Money로 만드는 것은 어떤가? - VO를 공부해볼 것
  • assertEquals vs assertSame - assertEquals: 두 개의 값이 같은지를 비교 - assertSame: 두 객체가 동일한 객체인지 주소값으로 비교 - Singleton 으로 만들어진 객체를 비교확인 - 리스트의 clone 메서드로 복사된 객체 비교 할수도 있음