Project

프리온보딩 인턴십 백엔드 TIL #1

newny 2023. 10. 26. 04:14
반응형

⭐알게된 것

협업 다운 협업은 이번이 처음인데, 팀원들과 1차 프로젝트를 진행하며 정말 많은 것을 알게 되었다.
 

github

개인적인 저장소로만 사용하다가 협업을 위해 사용해보니 굉장히 많은 기능들이 있다는 것을 알게 되었다.
PR 이라는 용어도 어제 처음 들어봐서 굉장히 생소하다.
 

Jira

협업 툴 이라는 것 또한 생소해서 이슈 추적, 버그 추적, 프로젝트 관리라는 의미 자체가 바로 와 닿지 않았다. 개발을 하며 사용되는 이슈라는 단어 자체도 생소했고, ‘노션이 있는데 왜 프로젝트를 따로 관리하는 툴을 사용할까?’에 대한 의문도 있었다.
팀원 중 한 분이 사용하는 방법을 보여주셨는데 볼륨이 큰 프로젝트에서는 무조건 사용할 수 밖에 없겠구나 하는 생각이 들었다.
 

JWT

한번은 들어봤던 단어였으나 아직 Spring DB를 열심히 배우고 있는 단계라 사용해보지 못하였다. 이번 프로젝트에서 많은 것을 구현하지는 못하더라도 토큰을 사용한 로그인은 꼭 구현해보고싶다는 생각이 들었다.
 

swagger

프리온보딩 선발과제를 하며 ‘UI가 없는 API 통신으로만 이루어진 서비스라면 요청할 데이터를 사용자가 어떻게 알까?’ 에 대한 의문이 있어서 찾아보았다. 그때 처음 swagger라는 단어를 알게 되었다. ‘API Document를 자동 생성해주는 프레임워크’ 라는 정도만 알고있는 상태이고, 자세한 것은 더 공부를 해야한다.
 

💡개선을 위한 방법

먼저 이번 프로젝트에서 로그인 구현 부분을 맡게 되었기 때문에 JWT 사용에 대한 공부가 먼저라고 생각 했다.
시간이 많지 않아서 JWT가 어떤 것 인지와 스프링 시큐리티를 사용했을때 어떻게 구현 되는지를 어느 정도 확인 후, 유튜브를 보며 기존 프리온보딩 선발과제에 실제로 코딩을 해 보며 공부하였다.
코딩을 직접 해보니 구글링을 통해 찾아보았던 이론들이 어느 정도 머리에 들어오면서 동작 원리에 대해 알게 되었다.
내일은 협업툴(Jira, github) 사용과 swagger에 대해서 직접 사용해 보면서 좀 더 익숙해지고, 공부할 예정이다.
 

📒오답 노트

JWT 구현 방법에 대해 구글링을 하다가 이해가 좀 더 잘 되는 코드로 코딩을 하던 도중 에러가 나는것을 확인했다.
antMatchers() 메소드가 사용되지 않았던 것. 이유는 스프링 부트 버전업이 되면서 requestMatchers() 메소드로 변경 되었던 것이다.
참고하고있던 유튜브 강의에서도 저 메소드를 사용하여 잠시 혼란이 왔었지만, 강의 자체는 따라하기가 굉장히 훌륭하여 변경된 메소드만 바꾸면서 그대로 따라갔다.
강의에서는 Exception 처리방식이나 코드 구조도 현재 팀원들과 진행중인 프로젝트의 버전에는 맞지 않아서 구글링을 통하여 해당 버전과 일치하는 코드들을 찾아서 코딩하였다.
 

🖋회고

첫날 PR 이라는 말을 들었을 때 무슨 단어인지 감 조차 오지 않았다. 구글링 하여 찾아내어 단어 뜻과 그 개념에 대해 알게 되었다.
그리고 대화를 나눠보니 다른 팀원들에 비해 많이 부족함을 느꼈다. 그래서 오늘은 과제 안내 시간이 되자마자 과제를 확인한 후 팀원들과 회의 전까지 분석하였다. 기술적인 부분은 많이 부족할 수 있지만 요구 사항 분석은 어렵지 않다고 생각하여 더 꼼꼼히 보고 분석하였다.
오늘은 JWT를 이용한 로그인 구현 방법에 대해서 공부했다. 구글링을 통해 인증, 인가의 뜻을 알게 되었고, JWT를 이용한 동작 원리에 대해서 알게되었고, 토큰 방식을 사용했을 때 얻을 수 있는 장점과 단점에 대해 알게 되었다.
더 분발하여 좋은 성과를 내야겠다.
 

🌏참고한 사이트

[회고 작성 방법] https://leejincha.tistory.com/70
https://shinsunyoung.tistory.com/110
https://jaehoney.tistory.com/249
https://soojae.tistory.com/53
https://adjh54.tistory.com/94
https://www.youtube.com/watch?v=YEB0Ln6Lcyk

반응형