국비과정이 시작되고 새로운 마음으로 공부를 시작한지 벌써 일주일이 지났다.
개인적으로 기존에 독학을 해왔던 상황에서 시작해서 그런지 크게 힘든점은 없었다.
오히려 주변에 같이 공부할 사람들이 생기고 , 공부하는데 돈도준다니 일석이조 🥹
이번주는 최대한 기록을 많이 남기려고 노력했다.
공부를 하다가 막힌다고 좌절해하지 않고 다른 흥미가 생길만한 무언가를 또 찾아 공부하려고 했고, 나름 또 성공적인 한 주를 보낸것 같다.
이번주는 기존에 정해둔 목표는 그룹스터디 팀원들과 진도를 어느정도 맞춰야겠다는 생각으로 나는 복습을 하기로 했다. 크게 정해두었던게 자바 자료구조와 스트림 부분을 복습하고 정리하는게 큰 목표였다.
근데 못지켰다.
못지켰다기 보다는 첫 목표와 다르게 다른것들을 더 이것저것 했었고, 그래서 결국엔 이렇게 진행이 되었다.
이렇게 진행이 되었다.
그렇게 작성한 TIL 은 총 10개정도 되는것 같고, 그동안 겪었던 예외나 오류에 관해서 해결법까지 기록했다.
그렇게 이번 한 주는 이정도의 수확이 있었다.
기존에 단순히 그냥 아 컬렉션 프레임워크에는 이런게 있구나~ 이정도로 끝내지 않고
내가 직접 활용할 수 있는 부분은 구현을 해보면서 한번 더 활용할 수 있게 되었다.
기존에도 스프링부트를 활용하면서 생각보다 스트림을 사용할 일들이 굉장히 많았다. 이런 상황에서 람다식을 써야되는 상황도 생각보다 많이 있었고, 인텔리제이와 코파일럿의 도움을 받긴 했지만 뭔가 겉핥기 느낌이었다.
따로 강의를 보면서 정리를 한번 더 했고, 여러 코드에 활용함으로써 코드가 한결 가벼워졌다
기존에 내가 원하던 기능을 구현하기 위해 스택오버플로우까지 들어가서 검색해보았지만 적절한 방안이 없었다.
양방향 맵핑을 이것저것 해봄으로써 첫 ManyToMany 관계에서 중간연걸 엔티티까지 만들어주는 방향으로 천천히 시행착오를 겪어가면서 기능을 구현해보려고 노력했다.
결국엔 뷰템플릿까지는 신경을 못썼지만 해시태그 기능을 구현했다!
이 경우에는 저번 댓글 수정 기능을 구현했을때와 비슷하게 나같은 초보자들이 참고하기 편하게 작성된 글이 없었다. 내가 직접 해결한 느낌이라 큰 수확이라고 생각했다. (ManyToMany보다는 중간 엔티티로 관계를 맺어주는것이 좋다는 얘기를 보고 그부분 까지는 참고를 했다.)
생각보다 내가 간과했던 문제들이, 지금까지 코딩을 해오면서 내가 겪었던 오류들이 수십가지였는데, 그 케이스들을 일일히 기록하지 않았다. 그냥 땅에 돈 버린 느낌이라고 해야하나..
그래서 새로운맘으로 시작하기로 마음먹고 나서는 오류만 기록하지 않더라도 TIL 로 해당 기능을 구현하는 진행상황을 공유할때 틈틈히 기록하려고 노력했고, 10개의 오류가 있었다면 8개정도는 기록한것같다.
기존에 스프링 시큐리티를 활용하면서 단순히 유저 ROLE 만 설정해두었고, 스프링 시큐리티에서 이것저것 활용해보세요! 하고 떠먹여주는데 다 갖다버렸다.
이번 국비 과정을 들으면서, 인풋아웃풋 스트림에 대해서 TIL을 작성해가면서 공부하는데 너무 재미가 없더라 ㅋ 그래서 평소에 궁금했던 스프링 시큐리티 부분에 대해서 강의를 듣기 시작했다.
내가 곧 추가하고싶었던 기능들은 좋아요와 조회수 기능인데, 세션을 활용하지 않고 JWT 토큰을 활용해서 중복 카운트 방지를 덤으로 가져간 기능들을 구현하고 싶었기 때문이다.
그렇게 강의를 들으면서, SecurityConfig 설정 클래스 속 메소드들이 무엇을 의미하는지 알게되었다.
여기서 이제 headerWriter 빼곤 다 뭔뜻인지 알게되었다.
마찬가지로 단순히 글이나 댓글을 삭제하는 로직에서 삭제하지 않고 deleted 컬럼을 만들어줘 Y/N 으로 입력하게 했고, 권한 인가를 활용해 관리자는 삭제된 게시글과 댓글을 열람할 수 있게 변경했다.
덤으로 작성은 따로 안했지만 Remember-me 메소드와 따로 게시판 에디터를 적용시켜서 디테일한 글 작성을 하게 기능을 추가했다.
확실히 문제해결 능력이다. 도움받을 수 있는 부분은 도움 받긴 했지만,그 외의 본격적으로 구현하는데 문제가 있었던 기능 구현은 내 머릿속에서 나왔다. 굉장히 칭찬해줄 부분이었던것 같다.
기록하는 습관이 더 좋아졌다. 이전 회고록을 살펴보면 TIL을 쓰는걸 깜빡하고 개발만 하기 급급해 회고록 내용이 정리가 거의 안됐고, 글이 너무 길어지는 경향이 있었다. 이번주는 확실히 TIL를 작성하고, 회고록에서 한번 더 작성한걸 기반으로 정리함으로써 배워간걸머릿속에 조금이라도 더 오래 남길 수 있게 되었다.
남는 잔 시간들을 굉장히 잘 활용했다. 수업을 듣다보면 내가 기존에 많이 공부했던 부분들이 수업에 나와서 지루할 수도 있는 타이밍에 이때를 이용해 공부나 개발시간으로 활용했고, 쓸데없이 멍때리거나 하는 시간이 거의 없었다. 시간관리를 효율적으로 잘 했던것 같다.
많이 차분해졌다. 공부에 임하는 태도가 몇주전까지만해도 남들보다는 더 열심히 잘 해야해!! 였지만 자연스럽게 공부 시간도 늘어나고, 주변에 그래도 같이 공부하는 사람들이 생기니 공부가 더더욱 일상이 되었고, 조급해지지 않아져서 오히려 기록도 더 많이 하게되고, 생각할 시간이 많아져 이제 확실히 매번 공부했던 것들이 온전히 내것이 되는것 같다.
이번주는 생각보다 내가 하고자했던거에 쓸데없는 시간낭비는 크게 없었고, 주말에도 계속 무언가를 할정도로 알차게 잘 보냈던것같다.
아싸리 계획을 바꿀거면 그냥 계획을 정하지 말고 그때그때 하고싶은거 공부하는게 맞는거같다. ㅠㅠ
소소한 목표가 있다면 11월 한달은 게시판 인증에 JWT토큰을 활용하고, 좋아요 조회수 기능에 +@로 파일 업로드 대댓글, 그리고 또다른 토이 프로젝트로 AJAX 를 활용한 비동기식 게시판 구현도 하고싶다.
천천히 풀어가면 될테니 조급해하지말자 😤