TIL-20210430

2021. 05. 01.
  • 역시 어제 내가 했던 인증 관련 질답은 아무것도 모르고 대답했던 것 같다. oauth의 작동 순서를 대충 둘러봤는데, 깃헙 로그인 페이지에서 승인을 하면 콜백 url로 응답이 간다. 여기에서 반환시켜주는 것이 아마 access token이 아닐까 싶다. 그럼 해당 토큰으로 요청을 보내서 유저 정보를 가져온 뒤 서버에 저장하고, 클라이언트에 로그인을 유지 시킬 무언가(토큰이든 쿠키든 세션이든)를 보내주는 구조인 것으로 이해했다. 이번 미션에서는 다른 부분에 문제가 생겨 이어서 해보지 못했는데, 다음 미션에는 구현해봐야겠다.
  • DB관련해서 오류가 있었다. 처음에는 로그인을 하지 못 하는 이슈였는데, 이는 세팅하신 분의 환경 기준으로만 되어있어 그랬던 것 같다. 이후 연결을 시켜보니 커넥터 에러가 발생했는데, 정확히 이유를 모르겠다. 지금 생각으로는 아마도 mysql서버가 8버전이라 커넥터 가 제대로 동작하지 않은게 아닌가 싶다. 어쨌든 결국 잡아내지 못 하고 h2로 데모를 진행했다. h2를 잡아놓은게 이렇게 생각해보면 잘 한 것 같지만, 어떻게 보면 h2를 사용해서 이런 상황이 나온 것 같기도 하고... 트레이드 오프라는 말이 정말 잘 만든 말 같다.
  • 프런트 배포는 무사히 마쳤다. 엔진엑스 설정이 좀 이해가 되니 크게 어렵지는 않았는데, 이미지가 깨지는 문제가 발생했다. 잘 생각해보니 static파일 설정에서 svg파일을 읽어오지 못 하는 것 같아 필터에 추가해줬다.
  • 다음 미션은 혼자 진행하겠다고 했다. 마지막 2주짜리 미션이니 잘 진행해봐야겠다.
  • 이번 미션에서 시도해봤던 부분은

    • 엔진엑스 프록시 설정
    • 프런트 배포
    • json파일로 목업 데이터 관리
    • 개발, 배포환경 분리
    • Spring Data JDBC

    프로젝트를 완벽하게 마무리하지는 못 했지만, 생각보다 배운게 많은 것 같다. 다음 번에는 aggregate root를 완전히 객체 관점에서 설계하고 부자연스러운 구조는 모두 관계테이블로 넘기도록 설계해봐야겠다. 보다 객체지향적이지 않을까 싶다. 그런데 단점은 구현할 때 짜증이 많이 날 것인데... 그래도 해 보자.

    json파일로 데이터 관리는 크게 나쁘지는 않았던 것 같은데, 좀 더 개선해서 관리할 수 있는 방법이 없는지 다시 생각해보는게 좋을 것 같다. 예를 들어 점점 정제된 데이터로 교체해가며 관리를 한다던지 하는 방법으로 하면 좀 더 괜찮지 않을까 한다. 마지막 즈음에 초기 데이터를 계속 사용하다보니 맞지 않는 부분이 생겨 테스트 진행이 어려웠던 것 같기 때문이다. 다음 미션이 겁나면서 기대된다.

정대화
DaeHwa_Jeong@outlook.com

Powered with by Gatsby 2.0