180305-180311


입사 10주차

급하게 1차 완성했던 프로젝트를 열심히 수정했고, 이 과정에서 배운 것이 제법 있었다.

솔직하게 얘기하면 그 동안 비동기에 대한 막연한 두려움이 있었고 (어떤 식으로 돌아가는지 흐름이 안그려지니까) 이해도가 제법 떨어지는 편이었다. 그랬지만.. 꼭 빈틈 없이 짜내야하는 로직이 있어서 열심히 찾고 공부한 끝에 깨달음을 조금 얻었다. ㅠㅠ

여기에 그 내용을 자세히 설명할 수는 없지만 CountDownLatch를 이용한 야매 코드 짜기 (?)를 거친 뒤에, CompletableFuture 사용법을 숙지해서 정상적으로 잘 돌아가는 코드를 짜니까 뿌듯했다. 동시성에 대해 잘 공부해야겠다는 생각도 들고..

문제 풀이

재밌어 보이던 문제 하나를 며칠 고민한 끝에 풀었고, 그 외에는 BOJ 재채점으로 인해 틀린걸로 처리된 문제들을 다시 풀었다.

대부분 시간 제한이 바뀌면서 시간 초과로 처리된 것들이었는데 다시 풀면서 예전에 내가 어떤 식으로 코딩했는지 살펴보니까 많이 부끄럽더라.

개인 공부

자바8을 이래저래 복습하고, 새로 산 책 두 권을 조금씩 읽었다.

  • UNIX V6로 배우는 커널의 원리와 구조

    • 재밌어보여서 구매했는데 역시 만만치 않다. 옆에 아이패드 놓고 소스 코드랑 관련 자료들 같이 찾아가면서 읽어봤는데, 제대로 다 읽으려면 시간이 좀 걸릴듯.. 요즘들어 내부 구조나 오픈 소스 까보는 거에 관심이 많이 생겼는데 이 참에 부족한 지식을 많이 쌓아놓으면 좋을 것 같다! 운영체제랑 컴퓨터 구조를 작년에 열심히 공부해둬서 다행인 것 같다 ㅠㅠ (아직 더 해야되지만)
  • 스프링 입문을 위한 자바 객체 지향의 원리와 이해

    • 기대 많이 하고 구매했는데 설명 너무 재밌다!

      ‘이미 객체지향 관련 책이나 자료는 나름 이것저것 봤는데 굳이 이걸 볼 필요가 있을까?’라는 의문이 있었지만 그건 너무 안일한 생각이었다. 여기서 설명하는 내용을 읽고 복습하면서 아직도 내가 객체지향에 대한 이해도가 떨어진다는 것을 다시 한번 깨달았고, 이제 좀 명확하게 정리되는 것들이 느껴져서 읽는 내내 기분이 좋았다. 이제 3분의 1 정도 읽었는데, 다 읽고 난뒤에도 여러 번 다시 읽어봐야할 책이라고 생각.

느낀 점

몇 주간 골머리를 썩이던 비동기 처리 로직 때문에 많이 애를 먹었는데 깔끔하게 해결해서 다행이었던 한 주였다.

내가 원하는대로 동작하도록 코드를 짜려면 앞으로 공부할 것이 참 많다는 생각이 든다. 지금도 일정 수준까지는 어떻게 짜야될지 바로바로 생각이 나지만, 조금만 난이도가 어려워져도 다른 사람에게 많이 의지하면서 구현하는 상황이기 때문이다. 오픈 소스 같은거 정말 많이 봐둬야겠다.. 코딩량도 늘리고.