본 내용은 내일배움캠프에서 활동한 내용을 기록한 글입니다.
Node.js 심화 강의가 지급되고 개인과제가 발제됨
일단은 강의를 시청해야 이번 개인과제를 진행할 수 있기 때문에 강의를 먼저 시청함
첫 날은 객체 지향 프로그래밍에 대한 강의 전부와 Layered Architecture Pattern에 대한 강의를 조금 시청함
강의 내용은 그리 어렵지 않았지만 이 내용들을 내가 따로 정리하는데 시간이 좀 걸림
특히 객체 지향에 대한 내용은 알고있는 내용이지만 질문이 들어왔을 때, 설명할 수 있는 수준이 아니었기에 구글링을 통해서 참고 자료를 더 찾아서 공부함
이 날도 마찬가지로 Node.js 심화 상의를 시청함
Layered Architecture Pattern에 대해서 학습을 했는데 생각보다 어렵진 않았음
(근데 생각해보면 강의에서 나온 간단하게 분리하는 방법이 다였음...)
Controller - Service - Repository에 대한 학습을 진행하고 마찬가지로 블로그에 정리함
원래 화요일까지 모든 강의를 끝내는 것을 목표로 잡았는데, 테스트 코드에 대한 내용이 너무 어려워서 진도를 나가지 못함
Jest라는 테스트 프레임워크를 이용해서 테스트 코드를 구현하는 것인데, 이게 처음 듣는 내용이다보니 구조 파악도 굉장히 어려웠음
강의 내용 중 에러가 발생하긴 했지만, 구글링을 통해서 간단하게 문제를 해결함
일단 테스트 코드의 구조부터 이해하기 위해서 줄마다 주석을 달면서 해석함
그 결과, 테스트 코드는 크게 테스트 설정, 실행, 검증 이라는 단계로 구분되는 것을 알게 됨
테스트 코드와 강의 내용 정리로 인해서 시간이 많이 지체되었지만 본격적으로 개인과제를 시작함
일단 코드를 3-Layered Architecture Pattern에 맞도록 분리하는 작업을 먼저 진행함
그래도 기존의 코드를 분리하기만 하면 되기에 큰 어려움 없이 분리함
하지만 코드의 양이 많기에 다소 시간이 걸림
분리를 끝내고 테스트 코드도 구현에 들어감
강의 예제를 통해서 조금은 익숙해졌다고 생각했지만 막상 구현에 들어가니 뭘 어떻게 작성해야 할지 감이 오지 않음
드디어 개인과제를 제출해야 하는 날이 왔음....
처음으로 선택 과제까지 모두 구현하지 못하고 제출함
테스트 코드가 너무 어려워서 구현에 애를 먹음
어쩔 수 없이 미완성인 코드를 제출하고 기타 문서작업을 진행함
제출 이후에 곧 바로 해설 강의 영상이 나옴
해설 강의를 보니 내가 테스트 코드에서 힘들어 했던 이유가 나왔음
나는 3계층 분리를 할 때 주요 기능별 메서드로 나눈 것이 아니라 모든 기능별로 세세하게 나눴음
그래서 테스트 코드 작성시 작성해야 하는 테스트 코드의 양이 많았고 더 복잡해 졌음
해설 강의 시청을 끝내고 나는 모든 코드들을 리팩토링했고, 구현하지 못한 이력서 테스트 코드도 작성을 완료함
다음 주에는 팀프로젝트가 발제됨
발제 문서를 기반으로 팀원들과 SA 작성, API 명세서, ERD 작성 등을 먼저 진행할 예정
제출일 포함해서 5일밖에 없지만 첫 날은 최대한 회의를 많이 진행할 예정
지난번 팀프로젝트를 해보니 처음에 계획을 하고 회의를 많이 진행하는 게 굉장히 도움이 되었음
이번주는 테스트 코드 때문에 생각보다 머리가 아픈 한 주였음
내가 못 찾는 거 겠지만 구글링을 해도 생각보다 정보를 찾기가 너무 어려웠음
그래도 해설 영상을 통해서 3-Layered Architecture Pattern에 대해 조금 더 이해할 수 있었음
테스트 코드는 사실 아직까지도 내가 구현한 내용이 맞는 건지 확신이 들지 않아서 괴로움
일단 피드백을 기다리면서 팀 프로젝트에 집중할 예정
이번주는 심화 강의를 이해하고, 개인과제 하느라 밤을 새는 경우가 많았음
그래도 이렇게 처음 다뤄보는 내용을 보니 더욱 발전할 수 있을 거라 느낌이 듦
조금 더 화이팅 해보자!!