늦은 프로그래밍 이야기

221219 TIL (알고리즘, 개인과제) 본문

내일배움캠프/TIL, WIL

221219 TIL (알고리즘, 개인과제)

한정규 2022. 12. 20. 00:12

TIL

오늘 배운 내용 정리

알고리즘

 - 프로그래머스 알고리즘 1레벨 10문제를 풀어보았다.

https://github.com/jk891113/java-algorithm/blob/main/src/main/java/phonenumber/Solution.java

 

GitHub - jk891113/java-algorithm

Contribute to jk891113/java-algorithm development by creating an account on GitHub.

github.com

 

스프링 개인과제

 - 숙련 강의 1단계 개인과제 리뷰를 보고 인증/인가의 기능을 Service에서 Controller로 이동하여 구현하였다.

 - 스프링 숙련 강의 2단계 개인과제를 진행하였다.

https://github.com/jk891113/spring-blog

 

GitHub - jk891113/spring-blog

Contribute to jk891113/spring-blog development by creating an account on GitHub.

github.com


오늘 배운 것

 - 스프링 숙련 강의 2단계 개인과제를 진행하였다. 입문 강의와 숙련 1단계 개인과제보다 훨씬 어려웠다. 양방향 연관관계에서 많은 어려움을 겪고, 게시글 내에 댓글의 리스트를 조회하는 과정에서 시간을 많이 소비했다. 양방향 연관관계를 설정한 후 계속 IlligalStateException과 StackOverflowError가 발생했고, 혼자 해결해 보려다 도저히 안되겠어서 튜터님한테 질문도 해보았지만, 해결이 안되어서 다른 수강생한테도 물어보고 하니 순환참조의 문제일 수 있을거라는 얘기를 들었다. 양방향 연관관계 순환참조의 키워드로 검색해보니, 게시글이 댓글을 참조하고, 댓글도 게시글을 참조하여 서로 순환참조가 일어나서 발생하는 문제였다. @JsonManagedReference와 @JsonBackReference 어노테이션을 사용하여 순환참조 문제는 해결하였다. 양방향 연관관계와 함께 정리해야 할 것이다.

 

 - 오늘부터 2주간 풀어야 할 새로운 알고리즘 문제가 제시되었다. 대부분 1레벨 문제였고 하나는 카카오 기출문제 였다. 알고리즘 푸는 실력이 많이 늘은건지 이번 문제가 쉬웠던건지 모르겠지만, 오늘 하루만에 다 풀었다. 저번에 풀었던 문제와 비슷한 논점이어서 해결방법을 일찍 파악할 수 있었던 것 같다. 일단 오늘은 자바로 풀어보았고, 다음에 시간이 되면 파이썬으로도 풀어보고 남은 2주동안 다른 문제들도 풀어봐야겠다.


'내일배움캠프 > TIL, WIL' 카테고리의 다른 글

221221 TIL  (0) 2022.12.22
221220 TIL (@OrderBy)  (0) 2022.12.21
7주차 WIL  (0) 2022.12.18
221216 TIL  (0) 2022.12.16
221215 TIL (스프링 과제, 후발대 자바 문법)  (0) 2022.12.16
Comments