Weekly Review - 9월 4주차

목차


무엇을 했는가

지난주 위클리뷰에서 스프링에 집중하기로 했다고 했다. 이렇게 하나만 집중하기로 마음먹으니 오히려 마음이 더 편해진것 같다.

스프링부트 스터디와 스프링 개념 스터디 두 가지 스터디에 참여하고 있는데, 스프링부트 스터디에서는 프로젝트 개발을 앞두고 개념을 같이 정리하고 있다. 이번주에는 도커의 간략한 사용법과 Git, 그리고 IoC/DI에 대해 각자 준비해서 리뷰했다. 나는 이번주에 도커를 준비해갔다. 다음주에는 도커 포트 연결하는 방법과 이미지 생성하는 법을 정리하기로했다.

Git은 그나마 조금 공부했다고 생각했는데도 깊히 파는 스터디원들과 이것저것 해보고, 의견나누는 과정에서 새로운걸 배웠다. Fork한 레파지토리를 오리지널 저장소와 동기화하는 방법은 몰랐는데, 이번에 알게되어 이것도 블로그에 정리했다.

IoC/DI에 대해서는 설명을 들었지만 명확하게 이해하지는 못했다. 제어가 역전되는건 대충 알겠는데, “의존성”에 대해서 아직 정리가 되지 않았다. 다음주에 더 정리해준다고 하셨는데 다음 스터디 전까지 개인적으로도 공부를 해야겠다는 생각이 들었다.

국비학원 출신으로 구성된 Java/스프링 스터디(이하 주말 스터디)에서는 이번에도 많이 해보진 못했다. 준비가 부족하다는 생각이 들었다. 개인적으로는 스프팅부트 스터디가 좀 빡쌔다보니 이 스터디는 좀 설렁설렁하려고 한게 아니었나하는 반성이 들었다. 그래서 스터디의 방향을 좀 바꿔보기로 했다. 예제 수준의 10분짜리 강의영상을 2-3개 보고와서 리뷰하는 것보다 개념을 하나씩 정해서 한 주동안 공부하고 리뷰하기로 했다. 나는 다음주까지 PSA를 정리해서 리뷰하기로 하였다.

이외에도 각자 한 주간 공부하면서 알게된 팁들을 10분에서 15분간 리뷰하는 시간도 갖기로 했다. 취업자는 회사에서 배우는게 있고, 미취업자도 취업을 준비하는 과정에서 공부하게 되는게 있으니 이를 공유하면 좋겠다는 취지에서 다음주부터 시행해보기로 했다.

구직에 대해 조급한 마음이 있었는데, 이번주를 거치면서 구직을 잠시 중단하기로 했다. 급한마음에 아무데나 지원하기보다 조금 더 천천히 준비를 하고, 제대로 준비된 상황에서 자신감을 갖고 다시 구직을 해보려고 한다.


무엇을 읽었는가

  • Deep Play - 데이터베이스 정규화 1NF, 2NF, 3NF, BCNF
    주말 스터디에서 다른 스터디원이 데이터베이스의 정규화에 대해 설명해주시면서 공유한 문서(블로그)이다. 중복을 제거한다는 모호한 의미만 이해하고 있었는데, 이 문서에 있는 이미지와 설명을 들으니 보다 명확하게 이해가 되었다.
    데이터베이스 정규화는 이상현상을 제거하고 유지보수에 유리하도록 테이블을 작게작게 쪼개는 작업이다. 여기서 이상현상은 이전에 블로그에 정리한 바 있다.
  • kazupon/git-commit-message-convention

    사실 이 글은 지난주에 읽은 글이었는데, 위클리리뷰에서 정리하지 않아 이번주에 정리해본다.
    커밋 메세지를 작성할 때의 규칙을 정리한 문서인데, 스프링 부트 스터디에서 이 문서를 함께 읽어보면서 향후 커밋 메세지 작성할 때 우리만의 규칙을 만들기로 하였다.
    일단 우리는 단순하게 커밋 메세지의 첫 단어는 대문자로 시작하는, 동사로 작성하고 두번째 단어에서 어떤 변경사항을 나타내는지 짧은 단어로 정리하기로 했다. 예를들면, Add readme.md 이렇게.


무엇을 보았는가.

  • 노마드 코더 - 네, 파이썬은 C언어보다 느립니다. 컴파일 기초개념 잡아드림
    이 영상을 보고 구글링을 더해서 컴파일러와 인터프리터를 정리해보았다.
    정리하면, Java같은 컴파일러 언어는 컴파일러가 소스코드를 통째로 해석하고 실행파일을 생성, 이를 실행하기 때문에 생산속도는 느리지만, 실행속도가 빠르다는 특징 있다.
    반면에 인터프리터 언어는 실행하면 그 때 실시간으로 해석하고 실행 결과를 출력하기 때문에 컴파일러 언어대비 생산속도는 빠르지만, 실행속도는 느리다는 특징이 있다.

다음주엔 무엇을 하겠는가

  • 스프링부트 스터디에서 약속한 도커 이미지 생성법과 포트 사용법에 대해 정리할 예정이다.
  • Intelli J에서 커밋메세지를 작성하고 Git을 사용할 수 있는데 아직 한 번도 써본적이 없다. 이번주에 이걸 배워서 스터디에서는 터미널대신 인텔리J에서 커밋을 해보려고 한다.
  • 주말 스터디 과제로 스프링의 주요 개념중 하나인 PSA 정리