📝 기록
-
11/3 TIL | 난 몰랐어 코테가 이리 다채로운지!🕺🏻📝 기록/매일의 기록 2022. 11. 3. 20:09
어제오늘의 코딩 도장 문제 풀이! 프로그래머스의 체육복이라는 문제였고, 어제는 Java, 오늘은 JavaScript로 문제를 풀었다. 여담으로 코딩 도장 레포지토리를 지난 TIL에서 올렸던 내용을 포함해 엄청 다채롭게 꾸며나가는 중인데, 위 사진의 라벨링은 아래와 같은 내용으로 활용되고 있다! 꾸준히 업로드하는 레포지토리에 나름의 정책을 만들고 어떤 식으로 하는 게 더 좋을지를 고민해보는 과정이 참 즐겁다. 이게 더 꾸준히 할 수 있게 하는 원동력인 거 같고, 코딩 도장을 수료한다고 하더라도 계속 1일 1문제를 풀어야겠다 생각했다! - Java: 자바로 푼 문제 - JavaScript: 자바스크립트로 푼 문제 - should try again: 다시 풀어봐야 할 문제 - solved again: 다시 한..
-
11/2 TIL | 그리디 알고리즘(Greedy Algorithm)📝 기록/매일의 기록 2022. 11. 2. 11:07
오늘 코딩 도장 문제 풀이를 하다가 문제에 해당하는 알고리즘이 '그리디 알고리즘(Greedy Algorithm)'에 해당된다는 것을 알게 되었고, 그렇다면 오늘의 TIL은 그리디 알고리즘을 정리해봐야겠다는 생각이 들었다! 그리디 알고리즘은 한국어로는 탐욕(내지는 욕심쟁이) 알고리즘이라고 하는데 이는 "매 선택에서 지금 이 순간 당장 최적인 답을 선택하여 적합한 결과(= 최적해)를 도출하자"는 모토를 가지고 있기 때문에 이렇게 탐욕이라는 의미를 붙인 것이라 생각된다. (한순간도 최고의 선택을 놓칠 수 없는 당신은 욕심쟁이 우후훗!!!🤗) 우선 그리디 알고리즘을 알아보기 전에 동적 계획법(Dynamic Programming)부터 알아야 한다. 동적 계획법 또한 최적화 이론 중의 한 기술로, 특정 범위까지의 ..
-
11/1 TIL | 대칭 키와 비대칭 키 암호화 방식📝 기록/매일의 기록 2022. 11. 1. 17:14
이번 주 강의는 로그인, 회원가입 그리고 인가를 배우는 만큼 암호화에 대해서도 공부를 하는 주간이다. 책을 읽으면서도 한 번에 이해 안 가는 부분들이 많아 각 개념들을 정리해서 소화하고, 다시 책을 읽는 방식으로 1주 1개발서적 챌린지를 진행하려고 한다. 하여 오늘은 '대칭 키와 비대칭 키 암호화 방식'에 대해 정리해보고자 한다. 암호화는 크게 대칭키, 비대칭키, Hash 이렇게 크게 세 가지로 분류된다. (참고로 Hash는 이번 포스팅에서 다루지 않음) 💡대칭키와 비대칭키 - 대칭키: 암호화/복호화에 사용되는 키가 동일하다. - 비대칭키: 암호화/복호화에 사용되는 키가 다르다. 우선 대칭 키 암호화 방식부터 정리해보자면, 양방향 암호화 방식 중에 널리 사용되는 방식으로 암호화와 복호화에 사용되는 키가 ..
-
10/31 TIL | HandlerInterceptor란?📝 기록/매일의 기록 2022. 10. 31. 19:06
이번 강의에서는 HandlerInterceptor가 등장했다. 오늘의 TIL은 HandlerInterceptor가 대체 무엇을 하는 놈인지 정리해보려고 한다. 일단 강의의 어떤 시점에 등장하였는지 먼저 말해보자면... 홈 화면에 접속하여 어떤 Token을 보내면 그 사용자에 맞는 이름을 홈 화면에 출력하게 만들려고 하면서 등장하였다. @RequestAttribute를 사용해서 user의 정보를 받고, user가 없으면 기본적으로 "Hello, world!", user가 있으면 "Hello, {유저 이름}"을 출력하려 하고자 한다. 하여 위와 같은 코드로 구현을 하였고, 아래와 같은 테스트를 돌린다. 헌데 Missing request Attribute라는 에러를 반환한다. 이는 Controller의 액션이..
-
TWIL #10 | 정신차려 이 각박한 세상 속에서!📝 기록/매주의 기록 2022. 10. 30. 22:05
📝 TWIL(This Week I Learned) 작성 가이드 1) 이번 주 한 일, 느낀 점, 배운 점을 작성한다. (3Fs, 1~2번에 해당) 2) 앞으로 개선할 점 등 어떻게 하겠다는 실천계획을 구체적으로 작성한다. (Future Action Plan, 3번에 해당) 3) 다음 TIL을 작성할 때 FAP가 제대로 지켜졌는지 피드백을 작성한다. (4번에 해당) - 참고: 5Fs, 뒤돌아보다 1. Facts (사실, 객관) - Spring으로 REST API 서버를 만들었다. - 입력 Validation Check와 JPA Repository 활용하여 작업하였다. - H2 Database로 영속성 기능을 구현하였다. 2. Feelings (느낌, 주관) & Findings (배운 점) 1) 이번 주는 ..
-
10/30 TIL | getReferenceById & findById 정리.📝 기록/매일의 기록 2022. 10. 30. 18:47
우선 getReferenceById에 대해서 말하려면, getOne과 getById도 등장해야 한다. 이 셋은 같은 메서드인데, getOne이 스프링 2.5 버전에 deprecated되면서 getById라는 메서드로 바뀌었고, 스프링 2.7 버전에 다시 deprecated되고 getReferenceById라고 이름이 바뀌었다. 공식 문서에서 똑같은 기능을 기술하고 있기 때문에 더 나은 네이밍을 위해 기능은 같으나 이름이 변경된 케이스라고 생각하면 된다. 그렇다면 어떤 경우에 getReferenceById를 사용하고, 어떤 경우에 findById를 사용해야 할까? 우선 getReferenceById는 찾으려는 대상이 없는 경우 내부에서 예외를 발생시킨다. 반면, findById는 찾으려는 대상이 없는 경우..
-
10/29 TIL | 인증(Authentication)과 인가(Authorization)📝 기록/매일의 기록 2022. 10. 29. 23:58
드디어 11주차의 학습의 첫날..! 이번 주는 로그인/회원가입을 배우는 주간인데, Spring Security를 통해서 구현한다. 오늘은 로그인 파트를 공부했는데, Hash 알고리즘을 활용하여 사용자에게 필요한 암호를 암호화하고, JWT를 활용해 사용자 정보가 담긴 토큰을 발급하는 과정을 배웠다. 그렇게 이번 주차 강의는 로그인/회원가입인 만큼, 인증(Authentication)과 인가(Authorization)라는 개념이 중요하게 다가왔는데, 솔직히 말해서 '인가'라는 단어는 이번에 처음 들었다..😅 항상 Authorization이라고 사용하였기 때문에... 옆에 붙은 영단어 Authorization을 보고 아하.. 그 뜻이구나 싶었다ㅎㅎ.. 이렇게 (내게는) 생소했던 단어인 인가와 인증에 대한 개념 ..
-
10/27 TIL | 문서화는 나의 힘! Github Issue Template을 활용하여 문서 손쉽게 작성하기.📝 기록/매일의 기록 2022. 10. 27. 15:33
오늘부터 코딩 도장 문제를 풀기 전에 어떻게 문제를 풀 것인지 글로 생각을 정리하고 문제를 푸는 것으로 새로운 가이드가 주어졌다! 가이드에서는 README.md 파일에 작성하라고 되어있었지만, 매번 README.md 파일 생성, 안에 들어가는 템플릿 복사 붙여 넣기 등 부수적인 작업을 해야 하는 게 귀찮았다... 이런 거는 어떻게든 자동화하고 싶은 맴..^^ㅎㅎ 그래서 깃허브 레포지토리 기능 중 이슈를 적극 활용해봐야겠다 싶었고, 오늘 코딩 도장에 일찍 출근한 김에 이슈 템플릿을 만들어보았다! 동기들에게 공유를 했더니 옆자리 쥬쥬가 너무 좋다고 TIL로도 공유해달라고 해서 한번 작성해본다! 이슈 템플릿 작성 방법 1. 템플릿을 만들고자 하는 레포지토리의 Settings를 클릭한다. 2. Settings ..