Skip to content

2020.10.17

Han edited this page Oct 17, 2020 · 2 revisions

회고

Han

  • 출근하니까 힘듬
  • 재택 1~2번 기대하고 있습니다.
  • item10에서 수학 내용 살짝 보기 싫어졌다.
  • 룰 개정이 필요하다.

David

  • 학교 다니니까 힘들다
  • 과제 + 시험....
  • 아이템이 어렵진 않았다.

Jack

  • 다음주 참석(10/24)은 좀 힘들 것 같음.

다음 스터디는..?

  • 하나의 아이템에 대해 너무 깊게 들어가는 것이 좋은 방법일까?
    • 개개인이 생각했을 때, 이건 찾아봐야겠다고 생각되는 질문들은 다 남겨주는 측면으로 진행
  • item3 (han, david, sunny)
  • item8에 대해서는 각자 정리할 것(david, jack)

Item 9,10,11

Item 9

  • AutoCloseable 를 구현받은 객체는 try~문에 들어가면, 자동으로 close() 된다.
  • 예외 stack trace가 쌓이면, 나중에 있는 것을 무시하고 맨 처음(원래 예외 발생의 원인)을 추적함.

Item 10

  • 논리적 동치성은 사람들이 어떻게 규칙을 정의하냐에 따라 달려있다.

    • value object에서 같음(equality)을 정의하는 것.
    • 같은 주소(==)를 공유하지 않더라도, 값이 같다라고 정의할 때
  • View 메서드란 무엇인가?

    • ColorPoint가 Point를 상속해서 사용해야하는데, ColorPoint가 Point를 객체를 필드로 가지고 있고, 거기에 color 만 가지고 있음.
    • ColorPoint에서 Point 만 반환하는 메서드를 view 메서드라 부른다.
    • 아마도, ColorPoint의 한 측면을 반환하기 때문이 아닐까?
    • 상속이 가지고 있는 큰 장점들이 있지만, equals 규약을 지키기 위해서는 abstract 클래스를 사용해야하지 않을까?
  • AutoValue

    • lombok에서 제공하고 있는 EqualsHashCode 등을 제공해주는 프레임워크
    • lombok을 사용하고 있으면 굳이 사용할 필요 없음
      • 왜? 롬복에서 더 많은 기능(Builder...)등을 제공해주니까.
  • URL Host Ip Equals ...

    • equals를 구현할 때, 외부 리소스가 포함되면 안된다.
      • 왜? 객체 자신의 의도와는 다르게, 변화할 수 있으니까.
  • 필드의 표준형

    • 표준형?
    • canonical form
    • 표준형은 하나만 존재해야하고, 객체에서 표준형을 사용하면, 반드시 약속된 한 대로(예상한 대로) 동작해야한다.
    • cf) Java 표준형은 Oracle이 주도함.
  • 객체지향적 측면

    • ColorPoint , Point 상속으로 구현되었을 때, equals을 어기는 걸까?
      • 대칭성, 추이성을 어길 수 있음.
    • 어떻게 보면 제약이라고 느낄 수도 있지만, 객체 세상에서 지켜야할 법.
    • chapter3에 대해 자세히 보는 게 좋을듯
      • 왜? Object에 대해 어떻게 상속받고 있는지 알려주고 있기 때문에.

Item11

  • 비결정적인 요소란?

    • 비결정적인 요소는 가변적인 필드를 의미하는 게 아닐까?
    • PhoneNumber 인스턴스에서 정의된 hashcode 메서드를 사용할 때, 외부 상황에 따라 달라지는 필드들이 없으니까, 항상 같은 해쉬코드 값을 반환할 것을 의미하는 듯.
    • Java 에서 사용하는 key는 불변객체임.
  • 지연 초기화 전략에 대해

    • Lazy라는 게, 사용하기 전까지는 placeholder 만 남겨둬서, 성능적 이슈에서 이득을 얻을 수 있을듯.
  • AutoValue

    • Equals, Hascode, toString만 지원
    • Lombok은 위의 기능에 더해서 더 많이 지원을 해주니까, 더 좋음.

준비

-> Han -> 10월 24일

Clone this wiki locally