노마드코더

 

 

💗 노개북 최애 틸(TIL)

 

Flynn(플린님)

  • 리팩터링 미션 할 때 플린님의 깨끗한 코드를 참고했습니다.
    덕분에 공부도 많이 되었습니다.
  • 플린님 TIL 링크

 

친슈님

  • 3줄 요약과 읽은 소감을 가장 많이 보고 배웠던 TIL입니다.
  • 책을 읽으면서 막히는 부분을 가장 많이 참고했던 곳 중 하나입니다.
  • 친슈님 TIL 링크

 

Jz님

  • 처음 노개북 작성을 했을 때 어떻게 정리할지 감이 안 잡혔을 때 Jz님 TIL을 보고 큰 도움이 되었습니다.
  • 책을 읽으면서 막히는 부분을 가장 많이 참고했던 곳 중 하나입니다.
  • Jz님 TIL 링크

 

 

 


😀 책에서 기억하고 싶은 내용을 써보세요.

  • 경계 살피고 익히기
    • 우리 자신을 위해 우리가 사용할 코드를 테스트하는 편이 바람직하다.
    • 외부 코드를 곧바로 작성해 외부 코드를 호출하는 대신 먼저 간단한 테스트 케이스를 작성해
      외부 코드를 익히면 어떨까?
      => 짐 뉴커크(Jim Newkirk)는 이를 학습 테스트라 부른다.
  • 학습 테스트는 공짜 이상이다.
    • 학습 테스트에 드는 비용은 없다.
    • 학습 테스트는 이해도를 높여주는 정확한 실험이다.
    • 패키지 새 버전이 나온다면 학습 테스트를 돌려 차이가 있는지 확인한다.
    • 학습 테스트는 패키지가 예상대로 도는지 검증한다.
  • 경계에 위치하는 코드는 깔끔히 분리한다.
  • 통제가 불가능한 외부 패키지에 의존하는 대신 통제가 가능한 우리 코드에 의존하는 편이 훨씬 좋다.
    => 자칫하면 외부 코드에 휘둘리고 만다.

  • 외부 패키지를 호출하는 코드를 가능한 줄여 경계를 관리하자.
    • 새로운 클래스로 감싸거나 아니면 ADAPTER 패턴을 사용해 우리가 원하는 인터페이스를
      패키지가 제공하는 인터페이스로 변환하자.
    • 어느 방법이든 코드 가독성이 높아지며, 경계 인터페이스를 사용하는 일관성도 높아지며,
      외부 패키지가 변했을 때 변경할 코드도 줄어든다.

 

 

🤔 오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.

  1. [학습 테스트] 토비의 스프링에서 봤던 내용이 나와서 반가웠습니다.
    => 하지막 실질적으로 활용을 하고 있지 않아서 좀 더 찾아보고 공부해봤습니다.
    => 학습 테스트와 단위 테스트에 대해 잘 정리된 블로그(링크)
    => 학습 테스트의 개념과 장점, 예제가 정리된 블로그(링크)
  2. 경계에 위치하는 코드 분리 관련해서는 개방 폐쇄 원칙(OCP)이 생각났다.
    => 객체의 확장은 개방적이지만, 객체의 수정은 폐쇄적으로 대하는 원칙을 말한다.
    => 기능이 변하거나 확장은 가능하지만, 해당 기능의 코드는 수정하면 안 되도록 하는 원칙
    => 만약에 외부 패키지가 수정되면 해당 객체에 의존하는 다른 객체도 줄줄이 고쳐야 하는데
         그런 문제를 방지하기 위해 개방 폐쇄 원칙을 적용한다.(참고 링크)

 

 

🔎 궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요. 

  • 외부 코드 사용하기 파트에서 의문 발생(144p)
    • IT회사 관련 얘기를 들으면서 하나의 버전으로 프로젝트를 진행하고 버전업을 안 한다는 얘기를 들었습니다.
      그렇다면 책에서 나오는 버전업으로 인한 문제는 직면하기 힘들 수도 있겠다는 생각을 했습니다.
    • 책에서는 예시를 하기 위해 자바 코드 관련을 예시로 들었다고도 생각했습니다.
    • 외부 라이브러리를 가져와서 사용한다면?
      => 책에서 추천하는 학습 테스트 후에 도입하는 방법 진행
      => 기존에 외부 라이브러리를 사용하는 부분을 외부 패키지에 의존성이 높지 않도록 구성

 

 

👀 소감 3줄 요약

  • 학습 테스트는 권장이 아닌 필수
  • 통제가 불가능한 외부 패키지에 의존하는 대신 통제가 가능한 우리 코드에 의존하는 편이 훨씬 좋다.
  • 외부 패키지가 변경되었을 때 내가 작성한 코드가 변경해야 하는 소요를 줄이도록 설계

 

 

 

 

반응형

+ Recent posts