항해99 - 1주차 WIL

Dzeko·2022년 1월 16일
0

개발일지

목록 보기
22/108
post-thumbnail

99일간의 부트캠프에 승선했다.
벌써 1주일이 됐지만 얻은 것은 예상보다 많았다.

뜻밖의 행운이었다.
이번 기수부터 심화반이 개설됐다고 하여 당연히 신청을 하였고, 커리큘럼 또한 굉장히 마음에 들었다.
프로젝트가 기존 3개에서 2개로 줄어드는 대신, 알고리즘과 자료구조를 4주동안 진행예정이고, 이곳에선 주특기라고 불리는 기술 하나를 깊게 파고들 수 있었다.

주특기는 Spring, NodeJS, React 세 가지 중 고르는 것인데, Spring은 이미 지겹도록 써봤고(재미없다), NodeJS도 구미가 당겼지만 최근 몇년간 프론트엔드를 거의 장악하고 있는 React를 평소 배우고 싶었다. 그래서 개인적으로 React-Native도 잠깐 공부를 했었는데 이번 기회에 본격적으로 배울 기회가 생긴것이다.

기대와 열정을 안고 시작한 항해, 첫 주차 회고

첫 날부터 미니프로젝트를 만들게 했다. 팀원은 4명이었고, 프론트와 백 담당을 나누지 말것을 권장하였다. 첫 날 분위기는 굉장히 좋았다. 팀장을 맡은 분이 대화를 잘 이끌어 주셨고, 아이스브레이킹과 아이디어 회의 또한 순조롭게 이어갔다. 아이디어는 비교적 금방 정할 수 있었다. 내가 제시한 '짤 만들기'가 신박하다며 채택되었고(몰표를 받았다 헷) 초기 설계와 역할 분담을 이야기했다. 각자 하고싶은 분야를 맡았고 나는 남는 것을 가져갔다. 사실 프론트를 하고 싶었지만 다른 팀원들에 비해 프로젝트 경험이 꽤 있어 백에서 기능 구현을 하게 되었다. 어차피 내가 항해에서 가장 하고 싶은건 리액트였으니 주특기 수업 후 마지막 프로젝트에서 하면 되었다.

프로젝트 진행 또한 순조로웠다. 팀원들이 모두 열심히 하였고 이대로 가면 계획했던 모든 기능을 구현하고 기한 안에 마칠 수 있을 것 같았다.
하지만 3일 차에 팀장을 맡았던 분이 개인적인 이유로 하차를 하게 되었고, 어쩔 수 없이 구현하지 못한 기능을 몇 개 남겨둔 채 마무리하게 된다.
그래도 항해측의 의도는 첫 시작이니 짧은 기간 안에 프로젝트를 진행함으로써 개발공부에 몰입하게 하는 것이었고, 때문에 오랜만에 몰입의 즐거움을 느낄 수 있었으니 만족했다.

5일차부터 제일 두려웠지만 제일 기대했던 알고리즘 주차를 시작했다. 팀이 재편성 되었고, 이번 팀원 구성 또한 만족도가 굉장히 높았다.
컴공출신인 분이 계셔 알고리즘 공부에 있어 많은 도움이 될 거 같았고, 실제로 많은 도움을 받고 있다. 그 분 또한 정보를 공유하는 것에 즐거움을 가지신 분 같았다.
항해에서 준 책으로 혼자 공부하고 팀원끼리 스터디도 하고, 저녁엔 강사님의 라이브 강의까지 있었다.
크게 깨달은 것은 그동안 내가 한 알고리즘 공부는 겉핥기 였다는 것이다. 이론 공부를 하기 싫어 문제만 풀고, 깊게 파고들지 못하였다. 제일 기본이 되는 배열, 문자열, 시간복잡도와 공간복잡도 조차 제대로 알고 있지 못했으니 스스로에게 너무 부끄러웠다.
책을 정독하며, 팀원들이 문제를 풀 때 생각하는 방식이며, 강사님의 이론 강의를 듣고나니, 이렇게 기본 개념이 확립되지 않으니 그동안 푼 알고리즘이 얼마나 비효율적인 코드들이었는지 깨닫게 되었다.
이걸 깨닫고 나니, 이론 공부가 재밌어졌다.

Weekly I Learned

  • JWT
    JSON으로 전자 서명을하여 URL-safe(URL에 포함 할 수없는 문자를 포함하지 않는 것) 문자열로 표현한 것
    헤더 (Header), 페이로드 (Payload), 서명 (Sinature)로 구성
    세션 관리가 필요 없어서 서버 자원과 비용을 절감할 수 있다.

  • API
    응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스

  • ServerSide Rendering
    서버에서 페이지를 그려 클라이언트로 보낸 후 화면에 표시하는 기법
    검색 엔진 최적화와 빠른 페이지 렌더링에 장점이 있다.
    하지만 ClientSide Rendering 과는 반대로 잦은 서버 요청을 하고 모든 페이지를 리로딩한다.

  • 빅오, 자료구조(배열, 리스트, 연결리스트)
profile
Hound on the Code

0개의 댓글