1주차 회고: https://laurent.tistory.com/entry/부스트캠프-9기-챌린지-1주차-회고
2주차 회고: https://laurent.tistory.com/entry/부스트캠프-9기-챌린지-2주차-회고
3주차 회고: https://laurent.tistory.com/entry/부스트캠프-9기-챌린지-3주차-회고
챌린지 과정 회고: https://laurent.tistory.com/entry/네이버-부스트캠프-9기-챌린지-회고
드디어 마지막 주차가 마무리되었다.
이번 주에는 2주차, 3주차 미션이 너무 강렬했던 나머지 4주차는 비교적 수월한 편이었다.
다른 주차에 비해 학습 정리도 무난하게 마칠 수 있었던 것 같다.
피어세션에서도 같은 팀원의 다른 조분들도 수월하게 하셨고, 체크포인트들도 다 채워져 있어서 난이도 자체는 쉬우셨다라고 짐작이 된다..
키워드는 데이터베이스, HTTP, 소켓 프로그래밍이었다.
타임라인에서 자세히 살펴보자.
타임라인
16-17일차
16-17일차에는 SQL 명령어, HTTP 기초 개념을 공부할 수 있는 미션이었다.
데이터베이스와 네트워크가 슬슬 나올 때가 되었는데.. 싶다가 마지막 주차에 몰아서 나왔다.
미션을 읽으면서 들었던 생각은 반가움 반 어색 반이었다.
반가웠던 이유는 비교적 가까운 시일 이전에 공부할 일이 있어서 잠깐 봤었기 때문이다. 데이터베이스는 작년 2학기에 데이터베이스 수업도 듣고, SQLD 자격증을 올해 6월에 취득해 최근까지 공부했어서 그닥 어려운 것은 없었다.
네트워크도 수업을 들었었..지만 학점이 별로 좋지 않았기도 하고 이번에 처음 공부한다는 마음으로 학습 정리도 열심히 채워보자! 는 생각으로 시작했다.
어색했던 이유는 부스트캠프 내내 네트워크, 데이터베이스 관련 미션이 나오지 않았기 때문이었다.
구현 끝나고 공부 할 때 주로 HTTP 요청, 응답을 보낼 때 패킷 안에 무슨 내용이 들어있는지 위주로 봤던 것 같다.
아래 MDN 문서에 잘 나와 있으니 관심 있는 사람은 참고하면 좋을 것 같다.
그래서 이 날 학습 정리를 위의 문서 내용들로 쭉 정리를 했다.
그런데 이게 웬걸? 18-19일차 학습 정리 체크리스트에도 HTTP request, response가 있었다.
새삼 이 날 열심히 정리하길 잘 했다는 생각이 들었다.
18-19일차
TCP/IP 소켓 프로그래밍
16-17일차에 이어 이 날은 데이터베이스가 빠지고 소켓 프로그래밍 내용이 중점적으로 나왔다.
소켓 프로그래밍은 학교 다닐 때 열혈 TCP/IP 소켓 프로그래밍
책으로 공부했었는데, 그 당시 좋은 수업이었지만 어려워서 잘 따라가지 못했었다.
그래서 정리도 할 겸 관련 내용들을 다시 공부하는 계기가 되었다.
다만 이 책에서는 C언어 기반 라이브러리로 구현했기 때문에 미션과 딱 맞는 학습 내용은 아니었다. 그래서 개념 위주로 챙겨봤던 것 같다.
옛날에는 이 저자 분이 강의를 유료로 제공했었는데, 작년 7월부로 전 강의가 무료로 풀리게 되었다.
위 강의에서는 멀티캐스트, 브로드캐스트 뿐만 아니라 이전 미션에서도 다룬 쓰레드 관련 내용도 포함되어 있다. 구체적으로는 쓰레드의 이론적 이해, 문제점과 임계 영역, 동기화, 더 나아가 비동기 IO 모델까지 존재한다.
이러한 내용들을 챌린지 과정 이전에 숙지했더라면 학습에 도움이 되었을 것으로 추측된다.
사실 위 강의들이 나에게는 난이도가 있는 편이라서 다 듣지는 못해 확정적으로 말할 수는 없지만, 이해만 된다면 학습에 큰 도움이 된다 확신할 수 있다.
만약 이 글을 읽는 시점이 부스트캠프 시작 전 시점이라면 강의를 사전에 학습하는 것이 유익할 것이다.
HTTP request / response
Content-Type과 Content-Length 헤더는 위 16-17일차에 있는 MDN 문서에 보면 HTTP 요청 - 본문
부분을 보면 나와있다.
response 받을 때도 구조 자체는 비슷해서 HTTP 응답 - 본문
부분에도 나와 있다. 두 부분 다 참고하면 좋을 듯.
Content-Type과 Content-Length에 대한 자세한 정보는 아래 링크를 타고 들어가면 나와있다.
https://developer.mozilla.org/ko/docs/Web/HTTP/Headers/Content-Type
https://developer.mozilla.org/ko/docs/Web/HTTP/Headers/Content-Length
다시 한 번 느끼는 것이지만 역시 웹 개발자는 MDN Web Docs와 친해져야 한다.
이전에 2021년 즈음 HTTP를 배울 때 김영한님의 HTTP 강의를 들었었다.
들었던 이유는 소프트웨어개발병으로 군 복무 중에 API 관련 개발 완료 후에 원리에 대한 이해를 하고 싶었고 놓친 내용이 있지 않을까 해서 점검 차에 강의를 듣게 되었다.
기억을 더듬어보자면 10월 어느 주말에 싸지방 한 켠에 있는 컴퓨터에 앉아 한 번에 몰아서 들었던 걸로 기억한다.. 총 러닝 타임이 5시간이어서 듣는데 그렇게 오래 걸리진 않았다.
그리고 김영한님 강의는 재밌어서 듣다 보면 끝까지 듣게 된다. 내용 자체도 심오하진 않아서 가볍게 들을 수 있었다. 후에 스프링 강의도 몇 개 들으면서 업무 처리했던 기억이 있다.
김영한님의 강의를 통해 야생형 개발자
로 성장할 수 있었다. 먼저 구현을 해보고 후에 강의를 듣는 자급자족 식으로 구현을 하다보니 배우는 속도도 빨랐고 무엇보다 김영한님의 양질의 자료들 덕분에 시행착오를 몇 번 겪지 않아도 좋은 내용들을 배울 수 있었다.
스프링 MVC 기초 강의들이 프론트엔드 내용은 아니었지만 웹 생태계가 어떤 식으로 돌아가는지, 특히 백엔드에서 스프링이 어떻게 돌아가고 왜 MVC로 설계되었는지 이해할 수 있었던 시간이었다. 백엔드로 직무를 잡았더라면 김영한님의 강의는 모두 구매했을 정도로 만족도가 높았다.
아무튼 다시 HTTP로 돌아와서, 텍스트보다 영상이 흡수력이 좋아 복습 차원에서 강의를 다시 들었다. 위에 MDN 문서가 어렵다면 김영한님의 강의를 듣는 것을 추천한다.
---
이 강의를 다 듣게 될 즈음에 영한님이 책 하나를 추천해주신다. HTTP 완벽 가이드라는 책인데 강의와 관련된 세부 내용들이 있다고 말씀해주셨고 관심이 간다면 한 번 쯤 읽어보길 권하셨다.
HTTP 관련 나름 유명한 책인 것 같다. 물론 이 책을 샀었지만 어려워서 다 읽어보진 못했다.. 이번 4주차 내용을 배운 계기로 다시 읽어봐야겠다.
https://product.kyobobook.co.kr/detail/S000001033001
체력 고갈
4주차에는 여러모로 아쉬움이 많이 남는 주차이다.
이전 기간 동안은 4시간 이내로 최대한 잠을 줄여가면서 구현을 진행하고 학습 정리에 힘을 쏟으며 지내왔다.
챌린지 시작 전에는 단거리 스프린트라고 생각했었던 것 같다. 그래서 가용 체력을 모두 소진하고 하루를 마무리했다. 3주차 까지는 어찌저찌 됐던 것 같다.
하지만 4주차가 되면서 그 동안의 누적된 졸음을 이기지 못하고 무너졌었다. 알람을 맞춰놓아도 몸이 일으켜지지 않았다. 코어 타임이 지나면 퍼져서 의욕을 잃어버린 채 멍 때리는 시간도 많았었다.
지금 생각해보니 단거리 스프린트가 아니라 10km 마라톤 정도 되는 것 같다. 풀 코스 마라톤까지는 아니지만 그래도 중장거리임을 인지해야 했다.
다행인 것은 마지막 주 끝나갈 때 쯤이어서 중간에 이렇게 되었으면 아마도 온전히 챌린지 과정을 수료하지는 못 했을 것이다.
만약 멤버십 과정을 가게 된다면 42.195km 마라톤을 하는 것처럼 페이스 조절을 잘 해야 할 것이다. 이 생활 패턴을 그대로 가져간다면 1~2개월 차에서 무조건 붕 떠버릴 것이다.. 앞으로도 공부할 때 체력 조절 꼭 신경 쓰자.
'Life > 네이버 부스트캠프' 카테고리의 다른 글
[부스트캠프 9기 멤버십] 1일차 학습 정리 (0) | 2024.08.19 |
---|---|
네이버 부스트캠프 9기 챌린지 회고 (0) | 2024.08.11 |
[부스트캠프 9기 챌린지] Day 18-19 (0) | 2024.08.07 |
[부스트캠프 9기 챌린지] Day 16-17 (0) | 2024.08.05 |
[부스트캠프 9기 챌린지] 3주차 회고 (1) | 2024.08.02 |
컴퓨터 전공 관련, 프론트엔드 개발 지식들을 공유합니다. React, Javascript를 다룰 줄 알며 요즘에는 Typescript에도 관심이 생겨 공부하고 있습니다. 서로 소통하면서 프로젝트 하는 것을 즐기며 많은 대외활동으로 개발 능력과 소프트 스킬을 다듬어나가고 있습니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!