Weekly retrospective(WW43)

1 분 소요

매주 해야하는 일

  • 주 3회 운동
  • 주 5회 알고리즘 문제 12월까지 잠시 제외
  • 주 2회 포스팅

이번 주 (WW43)

이번주 하기로 목표 했던 일

  • lv2 피드백 정리 - 내가 뭘 배웠을까?
  • 테코톡 주제 재 정리(내 말로 정리)
    • Dependency Injection
    • SOLID
    • 스프링 부트 애너테이션
    • Web server vs. WAS
    • Spring에서 Request로부터 Response까지의 흐름
  • Git cherry-pick
  • 깃 포스팅

계획 하지 않았지만 했던 일

  • 테코톡 주제 재 정리
  • 웹 엔지니어가 알아야 할 인프라의 기본
  • Code - 하드웨어와 소프트웨어에 숨어 있는 언어
  • Spring DispatcherServlet
  • 마인드맵 그리기

나에게 칭찬 해주고 싶은 것

  • 머리를 식히는 석촌호수 산책
  • 자기 반성, 문제 인식
  • 웹 엔지니어가 알아야할 인프라의 기본

공부한 내용

  • JPA FetchType과 프록시 객체
  • JVM GC 과정
  • Servlet Container와 Spring Container
  • Spring에서 Request -> Response 흐름
  • Dependency Injection
  • Springboot
    • 의존성 추가가 쉽다.
    • 설정 관리가 쉽다. default 설정이 다 되어있다.
    • 내장 서버가 들어있다.
  • SOLID
    • 단일 책임 원칙
      • 한 개체는 하나의 책임만을 가져야 한다.
    • 개방 폐쇄 원칙
      • 확장에는 열려있고, 변경에는 닫혀있다.
      • 인터페이스 vs. 추상클래스
    • 리스코프 치환 원칙 - 서브타입은 언제나 기반타입으로 교체 가능 해야한다.
      • 상위 타입의 객체를 하위 타입의 객체로 치환해도 상위 타입을 사용하는 프로그램은 정상적으로 동작해야 한다.
      • Vehicle car1 = new Car(), Vehicle car2 = new Truck() 에서 car1.run() 과 car2.run()이 같은 성격의 동작을 해야한다.
    • Interface Segregation Principle - 자신이 사용하지 않는 인터페이스는 구현하지 말아야한다.
      • 인터페이스는 최대한 작은 조각으로 쪼개라 -> 자신이 사용하는 인터페이스들만 구현해라 // TODO
    • Dependency Inversion Principle - 하위 레벨 모듈의 변경이 상위 레벨 모듈의 변경을 요구하지 않도록 해야한다.
      • 의존관계를 맺을 때 변하기 쉬운 것보다 변하기 어려운 것에 의존관계를 맺어라
      • 인터페이스를 끼고 의존 관계를 맺자
  • Git Cherry-pick

아쉬운점

  • 개념 정리를 하긴 했는데, 기억에 남도록 공부하지는 못한 것 같다. 이 개념들을 다음에 또 물어보면 다시 찾아봐야할 것 같다.
  • 하고 싶은 공부를 못했다.
  • 책을 읽지 못했다.
  • 이번 달 글 쓰기 주제도 못 정하고, 쓰지도 못했다.

아카이빙


다음 주 (WW44)

다음주 목표

  • Spring Wiki Engine Repository
  • 우형 기술블로그에 멀티모듈 이야기 읽기
  • 테크세미나 - 선착순 이벤트 서버 생존기! 47만 RPM에서 살아남다?! 다시 보기
  • 테크토크 - 엔드게임 이벤트 긴급 대응기 개발자 어!셈블? 다시 보기
  • 우형에서는 CI/CD 툴 뭐쓰는지
  • 우형에서는 이슈 트래킹을 어떻게 하는지
  • 이직?(전직?) 이유 생각해보기

가까운 미래의 목표

  • OS 처음부터 정리
  • 네트워크 처음부터 정리
  • JPA 스터디

댓글남기기