Skip to content

20210125

David Chung edited this page Jan 25, 2021 · 1 revision

회고

Sunny

  • 면접 / 면접준비로 바쁘게 지냈다
  • 면접보면서 느낀 점:
    • 기본기에 충실해야... 공부를 더 해야겠다
    • ELK, DB, query optimization...

Han

  • 아이템 54의 경우는 크게 어렵지 않았다
  • best practice를 현업 코드베이스에 적용하기에는 어려움이 있다...

David

  • 개강
  • 알고리즘 열심히 풀고 있음 (leetcode + 풀이방법, 생각)

Pyro

  • 코드스쿼드 cs10 너무 빡세다...

Roach

  • cs10 공부(RxJava)

Items

item51

  • List는 맨처음, 맨마지막 인덱스의 element를 반환하는 메서드가 없음.
    • API에서 제공하는 건 핵심적인,필수적인 메서드
    • 이 API를 통해서, 클라이언트가 자신에게 필요한 메서드를 조합해서 사용할 수 있도록 만들어주는 게 낫다.
    • 너무 다 만들어주면, API 자체가 지저분해진다.
  • 리스코프 치환원칙
  • 열거타입 사용은 가독성 뿐만 아니라 확장성도 생각하는 것.

item52

  • inexact method reference
  • submit method가 overloading 되어있는 상태 (Runnable or Callable)
    • Runnable return 타입 없음. Callable은 있고
    • 같은 위치에 functional Interface를 받을 수 있도록 오버로딩이 되어있는 상태
  • println, 여러개로 오버로딩이 되어있는 상태의 메서드
    • method reference를 이용하면, 매개변수가 있을 수도, 없을수도 있으므로 컴파일러 에러
  • Thread::yield는 반환하는 리턴값이 없으므로(Runnable) -> 컴파일러 에러 발생하지 않음.
  • Thread::currentThread, 반환 값 있음(Callalbe) -> 컴파일러 에러 발생하지 않음

item53

  • 가변인수를 사용하면 배열을 할당해서 성능이 떨어지기 때문에 정적 팩터리 메서드를 활용하자.

item54

  • null 처리를 하게되면 오류 처리를 위해서 클라이언트 로직이 더 복잡해지기 때문에 빈 컬렉션을 반환하는 것을 지향하자.

item55

  • null을 반환해서 NullPointerException을 런타임에 만나는 것보다는 Optional을 핸들링하는 것을 강제하자.
  • Kotlin이 좋다.
Clone this wiki locally