오늘 한일

- ‘OS? Oh Yes!’ 독서

  • 개인적으로 느끼기엔 현재로선 직접 활용할 내용들은 없어 보여 전공필수가 아니라 교양선택적인 느낌의 내용들이다. 단, 면접 준비 때 기초적인 cs 내용에 대비는 이 책으로 하면 되겠다는 느낌을 받았다.

오늘 느낀점

  • OS 책을 보면서 이전 정보처리기사를 준비했을 때 본 내용들이나 국비 때 공부했던 내용들이라 빠르게 읽어 나간 것 같다.(솔직히 까먹었던 내용들은 있어도 아예 새로 본 내용은 없는 것 같다) 시험을 보거나 운영체제에 대해 확실히 알아두려는 목적으로 읽은 게 아니라 누군가 물어보면 대답할 정도는 아니고 해당 내용에 대한 글 혹은 대화를 듣게 될 때 어떤 얘기를 하는지 알아들을 수 있는 정도나 기초 지식 함양 차원에 읽었다. 그래서 몇몇 부분들은 개념들만 익히고 구현 방법 및 상세 내용은 훑어보면서 지나갔다.(나중에 필요한 부분들에 한해서는 상세하게 공부하면 되니까 말이다)

  • 2017년에 공부하러 자주 갔던 카페가 1월 2일을 마지막으로 폐점을 한다고 한다.
    해당 카페를 자주 갔던 이유 중 하나가 8월 전까진 나도 소위 공카족으로 카페에 눌러앉아 장시간 공부하는 사람이었는데 아무래도 사람이 많은 카페에서 나 때문에 자리가 없는 경우 민폐가 되니까 신경 쓰여서(하루 이틀도 아니라 매일 가니까…) 사람이 없는 카페를 갔던 건데 사람이 없다 보니 결국…. 개인적으로 아쉽다.

  • 새해 복 많이 받자


내일 할일

  • 2017년 회고록을 작성해 보자(내일은 아니고 오늘 작성하고 자자)

  • Spring DI 실습

  • trello - 개발환경 구축, 빌드, 배포

30일 한일

- Spring DI 실습

- 면접 준비 특강 참석

  • 발표를 해주신 분께서 면접 준비를 어떻게 했는지에 대해 듣게 되었는데 차후 어떤식으로 무엇을 준비 해야 할지 가닥이 잡힌 것 같다.

- 친구들을 만남

  • 30일 아니면 31일 둘 중 하루쯤은 친구들을 만나려고 했는데 30일에 만나서 잘 논거 같다.

31일 한일

- ‘OS? Oh Yes!’를 읽었다.

  • 괜찮을까 걱정 했는데 생각보다 괜찮은 책인 것 같다.
  • 다른 운영체제 책들을 생각해보면 그렇게 깊게 들어가는 내용은 없지만 일단 현재 필요한 지식 정도만 보는 중이다.(그러긴 해도 빠트리는 곳 없이 읽기는 하는 중이다)

30~31일 느낀점

  • ‘OS? Oh Yes!’가 300페이지 정도의 분량이라 가벼움 마음으로 읽고 있어서 가능하면 오늘 안에 다 보고 싶었는데… 책 보는 속도가 느린 게 이럴 때 발목을 잡는 것 같다. 현재 100쪽까지 봤는데 아예 처음인 내용들은 없어서 더 빠르게 볼 수도 있었을 것 같았는데 생각 보다 많이 못 봤다. 가능하면 오늘 새벽에 좀 많이 봐두고 내일마저 다 봐야겠다.

내일 할일

  • ‘OS? Oh Yes!’ 다 읽기

  • 2017년 회고록을 작성해 보자

오늘 한일

- DI 및 Spring DI

  • null처리를 Optional 적용하여 리팩토링.

- 자바 백엔드 과정 송년회

  • 즐겁게 잘 마무리 한 것 같다. 모두 내년에도(혹은 내년엔) 즐거운 한해가 되자.

오늘 느낀점

  • Optional을 이용해서 더 깔끔히 처리하고 싶었지만 기존에 작성한 방식에서 더 좋은 방식으로의 개선이 생각이 안 나서 아쉽지만 마무리했다. 그래도 이번에 Optional에 대해 많이 고민해보고 사용하면서 사용법에 대해서는 익숙해진 것 같다. 차후엔 스트림이랑 같이 사용하는 방법에 대해서도 학습해봐야겠다.

내일 할일

  • 호글님의 백엔드 취업 특강!!

  • Bean Lifecycle & Scope 공부

오늘 한일

- DI 및 Spring DI

  • @Controller, @Service, @Repository 애노테이션이 설정된 클래스에 대한 인스턴스 생성 및 의존관계 설정을 애노테이션으로 자동화 완료

  • MVC 프레임워크의 AnnotationHandlerMapping이 BeanFactory와 BeanScanner를 활용해 동작하도록 리팩토링

  • for문을 사용한 부분들을 스트림으로 변경

  • null 관련 부분들을 Optional로 변경(약간 아쉬운 부분이 있어 다시 진행 중)

- Optional의 orElse()와 orElseGet()

  • 소스 코드를 볼수 있으면 좋은 점이 이거다.

    Object object1 = objectOptional.orElse(new Object());
    Object object2 = objectOptional.orElseGet(() -> new Object());
    
    출처: http://multifrontgarden.tistory.com/131 [우리집앞마당]
    

    두 메소드의 차이점을 인터넷으로 보다 보니 전자의 경우 Optional 내부의 값이 null이 아닌 경우에도 무조건 객체를 생성하고 후자의 경우 null인 경우만 생성을 한다는 설명을 봤다. 설명 자체가 이해가 안 되진 않는다.

    public T orElse(T other) {
        return value != null ? value : other;
    }
    
    public T orElseGet(Supplier<? extends T> other) {
        return value != null ? value : other.get();
    }
    

    이렇게 Optional 내부를 보면 이해 자체를 할 필요도 사라지고 확실히 기억된다.
    덤으로 지금 orElseGet을 사용하려는데 자꾸 컴파일 에러가 나서 고생 중이었는데 왜 안되고 있는지도 알 수 있다.


오늘 느낀점

  • 1단계 힌트로만 진행하고 있었는데 오후에 2단계 힌트를 봤다. 어떤 메소드를 만들어야 하는지 설명이 있다 보니 두 시간 정도 만에 초록불이 보이게 완성했던 거 같다. 힌트를 보기전에 내가 예상했던 방법으로 구현하게 되어있던데 아직은 대략적인 형태는 예상돼도 실체화(?) 시키는 능력까지는 부족한 것 같다. 특히나 개인적인 욕심 때문인지 일정 이상의 힌트를 보고 만들면 통과했다는 느낌이 들지 해냈다는 느낌이 안 나는 것 같다..

  • for 문을 스트림으로 변경하는 건 크게 어려움이 없는데 생각해보면 매번 for 문으로 요구 사항을 해결 한 다음 리팩토링단계때 스트림으로 변경하는 것 같다. 다음번부터는 처음부터 스트림으로 작성하는 버릇을 들여봐야겠다.

  • 마찬가지로 Optional을 적용하고 있는데 자주 사용하지 않다 보니 약간 헤맨 감이 있었다. 구현 자체는 해뒀는데 Optional을 제대로 사용한 느낌이 아니라 좀 더 보고 있다. 일단 이 부분이 해결되면 pr을 보내도록 해야겠다.(동시에 다른 곳도 마음에 안 드는 곳이 보이면 고치는 중이다)

  • 오후 5시쯤 너무 피곤해서 30분쯤 자고 일어나니 다시 팔팔해졌다.(그러고나니 낮에 구현했던 코드들에서 불필요한 부분들도 많이 보이더라) 도리어 지금 하나도 안졸려서 문제다.


내일 할일

  • DI 프레임워크 실습 마무리
    • Optional 적용
  • 백엔드 송년회

오늘 한일

- DI 및 Spring DI

  • DI 및 Spring 의존관계 연결에 대한 학습

  • DI 및 Spring DI 실습

- 도서관 책 반납

- 기본적인 자바 라이브러리의 내부 구현 내용이 안보이던 문제 해결(

  • 정확히는 다른건 다 되는데 rt.jar 이 한개만 안보였다.(apt-get으로 깔다 뭔가 꼬인듯 싶다)

  • Enhanced Class Decompiler 플러그인 설치(봄이네 혹은 봄이네집님 감사합니다)


오늘 느낀점

  • 어제에 이어 오늘도 진도 자체는 별로 못 나갔다. 컨디션이 안 좋은 느낌이다. 특정한 시기에 대한 분위기를 덜 타는 편인데 연말에다 이번 주 월요일까지 쉬는 날이었다 보니 조금은 연휴 분위기를 타버린 것 같다. 일단 실습을 어떻게 짤지 구상은 해뒀으니 내일은 집중해야겠다.

  • 쿠가 예외 처리에 대해 정리하는 걸 봤는데 깔끔히 잘하는 것 같다. 학창시절 때부터 느꼈는데 정리하는 요령도 부족하고 잘 하지도 못한다. 사실 당시엔 공부를 열심히 안 했던지라 그만큼 공부 한걸 정리할 일도 없었다… 그래서 그런지 아직도 정리는 잘 못한다. 일단 내가 잘 하고 싶은 생각도 있고 일순간에 잘 하기 쉬운 것도 아니니 공부 한 것들을 정리해나가면서 시나브로 나아져야겠다.

  • 봄이네집(브라이언) 개발자님 덕분에 이전부터 신경 쓰였던 자바 기본 라이브러리의 내용이 안 보였던 문제를 해결했다. 플러그인은 미처 생각을 못 해봤는데 덕분에 손쉽게 해결됐다. 내가 영어를 조금만 더 잘했어도 더 잘 찾았을 것 같다는 아쉬움도 생긴다.(혹시 봄이네님 보시면 식사 약속 잡으셔도 된다)

  • 9시 이후 두통의 징후가 찾아왔는데 날도 추운데 몸살 걸리고 하면 고생이 크니 오늘은 후딱 자야겠다.


내일 할일

  • DI 프레임워크 실습