본문 바로가기
WIL (Weekly I Learned)

[항해99] 1주차 회고

by oagree0123 2022. 1. 16.

한 주에 대한 정리

항해99 부트캠프를 시작하고 1주 차가 끝났습니다. 앞으로 매주 무엇을 했는지,

어떠한 생각이 들었는지, 어떤 것을 배웠는지 회고를 해보려고 합니다. 

 

항해의 1주 차는 팀으로 미니 프로젝트를 수행하고 완성하며 이후 긴 시간을 적응하기 위한 준비의 기간이었습니다. 저희 조는 4명으로(중간에 한 분이 하차하셨지만..) 스타벅스 음료들을 리뷰하는 웹 사이트를 만들었습니다.

 

먼저, 1주 차에 대한 소감은 팀 프로젝트로 협업을 경험하고 스스로 하나의 프로젝트를 완성하는 경험을 가질 수 있었다는 것이 좋았습니다. 물론 대단한 협업이나 대단한 프로젝트를 만든 것은 아니지만, 성취감을 중요하게 생각하는 사람으로서 좋은 경험이 되었다고 생각합니다.

 

다음에는 프로젝트를 진행하면서 알게 된 것에 대해 정리해 보겠습니다.

 

API

API는 Application Programming Interface의 약자로 응용 프로그램에서 사용할 수 있도록, 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만드는 인터페이스를 의미합니다.

 

웹에서 API는 개발에서 다른 서비스에 요청을 보내고 응답을 받기 위해 정의된 명세라고 설명할 수 있습니다. 오픈 API를 이용하면 구글 지도, 네이버 지도, 우편번호 등 다양한 서비스를 쉽게 사용할 수 있습니다.

 

프로젝트를 진행하면서 저희 조도 로그인, 포스트 작성, 리뷰 조회 등 데이터베이스에 정보들을 저장하고, 정보들을 받아오는 역할을 하는 다양한 API에 대해 설계를 해보았습니다. 프로젝트가 크지 않은 만큼 작은 API를 설계했는데, 이마저도 개발 도중에 빠진 것이 있어 수정해야 하는 일도 있었습니다.

 

JWT

JWT는 JSON Web Token의 약자로 JSON 구조를 이용하여 사용자에 대한 속성을 저장하는 Claim 기반의 웹 토큰입니다.

조금 풀어서 설명하자면 인증에 필요한 정보들을 암호화하여 사용하는 토큰입니다.

JWT의 장점은 토큰을 발급한 후 암호화된 것을 검증만 하면 되기 때문 별도의 인증 저장소가 필요하지 않다는 것입니다.  단점은 JWT는 토큰의 길이가 길어, 인증 요청이 많아질수록 네트워크 부하가 심해질 수 있으며, payload에 저장되는 유저의 정보 자체는 암호화되지 않기 때문에 중요한 정보는 담을 수 없습니다.

 

우리 조의 프로젝트에서도 로그인을 JWT 방식을 사용했는데, 이전에 쿠키/세션 방식을 이용해 보았다면 비교해 보았을 텐데 직접 사용해 본 적이 없어 아직까지 몸으로 느끼는 장단점은 없었습니다. 

 

이후에 RESTful API와 JWT, 토큰/세션 등에 대해서는 더 자세히 작성하려고 합니다.

 

정리

이번 항해의 1주 차를 정리해 보자면, 걱정했던 만큼 어려움이 있었던 것은 아니었습니다. 하루 종일 컴퓨터 앞에 앉아있어야 한다는 생각과 '내가 프로젝트 등을 진행할 수 있을까'라는 걱정이 컸었는데 너무 쉽지도 않게 너무 어렵지도 않게 진행한 것 같습니다. 이후에는 어떻게 될지 모르겠지만 목표를 가지고 시작한 만큼 최선을 다하려고 합니다!

 

이번 주는 이렇게 끝!!!!

'WIL (Weekly I Learned)' 카테고리의 다른 글

[항해99] 6주차 회고  (0) 2022.02.20
[항해99] 5주차 회고  (0) 2022.02.13
[항해99] 4주차 회고  (0) 2022.02.06
[항해99] 3주차 회고  (0) 2022.01.30
[항해99] 2주차 회고  (0) 2022.01.23

댓글