[TIL] 2022-03-07

nathan·2022년 3월 7일
0

TIL

목록 보기
30/34

Spring 2주차 시작..!

  • 미션이 총 6개라고 하는데, 오늘 1은 해냈다..? ㅋ ㅋ 승산은 있다. 도전해보자 (단, 미션에 너무 매몰되지 않을 것.)
  • 오늘 호눅스가 스프링 미션이 끝나면 토이 프로젝트를 하나 해보라고 추천해주셨다. 꼭 해볼 수 있도록..!
  • HTTP, TCP/IP, OSI 7계층.. 학습해야할 거리가 생겼다.
  • DB에서 pk를 어떤 방식으로 정의하는가, 리소스 명을 정할 때 단수를 써야하나, 복수를 써야하나 같이 아직도 찬반 논쟁이 뜨거운 주제들에 대해서 알게 되었다.

😍 좋았던 것(Liked)

  • 쿠킴(쿠키아님), Jay, 포키, 테리, 케이, 필과 이번 주를 함께 보내게 됐다!(아침 데일리 스크럼 분위기는 좋았다..!)
  • 스프링 스터디를 하고싶어서 몇몇 분들께 하고싶은 방식을 설명했는데, 긍정적인 답변이 돌아왔다.
    • 점점 구체화를 해봐야겠다.
  • 미션 1을 내기는 냈다.. (항상 내고나면 아쉬움은 남는다... 테스트 코드 조금만 더 신경쓸걸..)
  • 오늘 Thymeleaf가 어떤 방식으로 Controller 계층에 데이터를 가져오는지 몰라서 엄청 해매다가 루이한테 질문을 해서 해결했다. 결국 getter, setter를 통해서 private 필드들을 타임리프가 읽고 수정할 수 있는 것 같다. (오늘 백엔드 디스코드에서 다른 멤버 분들이 이야기하는걸로는 mustache는 thymeleaf와 달리 getter없이도 강제 주입을 할 수 있다고 한다. setAccessible - 리플렉션으로...)
    • https://github.dev/spullara/mustache.java 여기에서 찾았다고 하는데, 이런 소스코드 속에서 원하는 키워드를 찾으려면 어떻게 해야하는지 내일 Jay에게 물어봐야겠다.

📚 배운 것(Learned)

  • 다양한 의존관계 주입에 대해 학습했습니다.

  • 의존 관계 주입은 총 4가지가 존재합니다.(생성자 주입, 수정자 주입, 필드 주입, 일반 메서드 주입)

    • 생성자 주입 : 주로 불변, 필수 의존 관계에 사용합니다.
      • 생성자가 딱 1개만 있으면 @Autowired를 생략할 수 있습니다.
    • 수정자 주입 : setter에 @Autowired 가능, 주로 선택, 변경 가능성이 있는 의존관계에 사용합니다.
      • 선택적으로 하려면 @Autowired(required=false) 옵션을 이용합니다.
    • 필드 주입 : 짧고 간결하나, 외부에서 테스트가 불가능합니다.
      • 하기 위해서는 setter를 만들어야하는데, 결국 수정자 주입과 다를게 없습니다.
      • 주로 짧고 간결하여, Test 내부에서 주입할 때 사용하거나, 스프링 설정을 목적으로 하는@Configuration 같은 곳에서만 사용됩니다.
    • 일반 메서드 주입 : 수정자 주입과 유사합니다. 한 번에 여러 필드 주입이 가능하다는 장점이 있으나 일반적으로 사용하지 않는다고 합니다.
  • 자바 빈 프로퍼티 규약에 의하여, setXxx, getXxx 메서드를 사용하여 값을 읽거나 수정합니다.(필드 값을 직접 변경하지 않기 위함)

  • 스프링 컨테이너가 하는 일

      1. 스프링 빈 등록하기
      1. 의존 관계 주입하기
  • 마스터 클래스 때 세션 vs 쿠키(쿠킴아님), JVM 작동원리에 대해 배웠습니다.

    • 집중력이 아쉬웠습니다. 중간 중간 내용을 놓쳐 따라가지 못했고, 내일 다시 정리해보려고 합니다.

💦 부족했던 것(Lacked)

  • 어떻게 학습을 해나가야할지 확신이 서지 못했습니다. (그래도 일단 강의를 빠르게 훑고,, 미션을 구현하면서 또 학습하고.. 하는 방식으로 해야할 듯...?)
  • 마스터 클래스를 듣는 집중력이 많이 약하네요..ㅠㅠ 강의를 다시 듣는것이 부담스러운데,, 제 시간에 집중하여 끝낼 수 있는 방법을 찾아봐야겠습니다.

🕯 내일의 나에게 바라는 것(Longed for)

  • 운동하기!
  • 개구리책 읽기
  • 미션 2 시작하기!
  • 미션 1 PR 피드백 나오면, refactoring 하기
  • 호눅스 JVM 설명 부분 다시 듣기
  • 영한님 강의 ㄱㄱ씽~
profile
나는 날마다 모든 면에서 점점 더 나아지고 있다.

2개의 댓글

comment-user-thumbnail
2022년 3월 8일

나단 저랑 스프링 토이프로젝트 짝프로그래밍 ㅎㅏ시죠

1개의 답글