오늘 학습한 내용 소셜 로그인 기능 (OAuth2 이용) 단위 테스트 코드 테스트 코드는 소프트웨어의 기능과 동작을 테스트하는데 사용되는 코드이다. 개발 과정 중에서 예상치 못한 문제를 미리 발견할 수 있고, 작성한 코드가 의도한대로 작동하는지 검증할 수 있다는 장점이 있다. (실제 회사에서도 무조건 !! 테스트 코드를 활용한다.) 배포후에 에러가 발생하면 그것을 해결하는 시간과 비용이 크다.. Test 코드는 정말 중요한 내용이니까 테스트 코드에 대해서 열심히 공부도 하고 실제로 적용도 해서 더욱 완성도 높은 개발을 할 수 있는 실력을 쌓아야겠다.
최종 결과물 https://github.com/hakjunjoo/outsideworld GitHub - hakjunjoo/outsideworld Contribute to hakjunjoo/outsideworld development by creating an account on GitHub. github.com 만족스러웠던 점 (Keep) 우선, 지금까지 해왔던 프로젝트 중에서 가장 완성도가 높았던 것 같다. 팀원들과의 의사소통 (주기적인 회의 및 코드리뷰, 상황공유)이 많았던 것 같다. 서버와 클라이언트가 소통하는 과정을 조금 이해할 수 있었던 시간이었다. 스프링 코드가 많이 익숙해지고 있다. 프론트 구성도 해봤는데 이 역시 좋은 경험이었던 것 같다. 아쉬웠던 점(Problem) 프로필이나 게시글에 이..
프로젝트에서 서버에 대한 구현이 거의 완료되어서 더 완성도 높은 프로젝트 결과물을 위해 프론트앤드도 구현하기로 했다. 프론트앤드는 정말 경험이 하나도 없기 때문에 하나하나씩 새로 공부를 해야했다. HTML과 CSS는 어찌어찌 부트스트랩과 구글링을 통해서 해결했다.. 이제 문제는 회원가입부분에서 입력한 내용을 서버와 통신하는 것인데 이 역할은 js가 해준다. 여기서 활용할 수 있는 것이 ajax인데 입력받은 내용을 server와 통신을 해주는 역할을 한다. ajax를 사용하는 이유는 크게 두 가지 이다. 요청에 대한 응답을 HTML이 아닌 Data(Json)을 받기 위해 비동기 통신을 하기 위해 유튜브에서 강의도 찾아보고, 구글링도 열심히 해서 작성한 코드는 다음과 같다. 프론트는 하나도 모르니까 정말 어..
Keep 정말 기초적인 내용은 잘 이해하고 있는 것 같음 SpringBoot의 기본적인 흐름은 알 것 같다. 팀원들과 적극적으로 소통하려고함 (매일 코드리뷰, 모르는 내용 질문하기) 모르는 내용이 있을 때에는 관련된 정보를 구글링해보고, 정리해보는 습관을 가지려고 노력함 Problem 심화적인 내용은 아직 이해를 하고 있지 못한 것 같음 Spring Security에 대한 이해가 완벽하지 않다. 튜터님께 적극적으로 질문하지 않았음 Try 튜터님께 적극적으로 질문하기 심화적인 내용 이해해보려 노력하기 (관련된 정보들을 찾고 정리해보기) 프로젝트 기간 중 더욱 의사소통 많이하기
문제상황 개인 과제의 요구 사항 중에서 validation의 유효성을 검사하고 이에 따른 예외를 처리하는 것이 있었다. Controller에서 try-catch 로 이에 해당하는 MethodArgumentNotValidException을 처리하려고 했는데 아직 이유는 잘 모르지만 오류가 발생했다. 다른 방법을 찾아보니 @ExceptionHandler로 예외를 처리할 수 있었다. @ExceptionHandler @Controller, @RestController가 적용된 Bean내에서 발생하는 예외를 잡아서 하나의 메서드에서 처리해주는 기능 Controller, Restcontroller에만 적용이 가능하다 (@Service 같은 빈에서는 안된다.) @ExceptionHandler에 등록한 Controll..