전체 글
-
3월을 돌아보는 회고회고 2023. 4. 1. 13:01
3월 한 달은 기본기를 위해 인풋을 최대화 하려고 노력한 시간이었다. 시간의 양적으로 부족함 없이 열심히 꾸준히 하려고 했다. 시간의 질적 향상을 위해서도, 쓸 데 없는 거 하면서 열심히 보냈다는 느낌만 받는게 아닌지 계속 검토를 했다. 가급적 의미있는 활동 시간을 채우기 위해 노력했다. 의미 있는 반복은 의미 있는 결과로 이어진다. ...는 말을 사실이라고 믿으면서 보내기로 했다. 계획 3월의 일과 계획은 이랬다. 일어나서 영어 공부 씻고 아침에 산책(하면서 샌드위치 & 커피 사오기) 9 to 6 학습 스케줄 진행 (메인 학습 시간에는 인강을 주로 진행하고, 마치면 프로젝트를 진행할 계획이었다) 스터디 있는 날은 오전 스터디 진행 6~7시 동안 집안일 7~8 저녁먹고 산책 8~11 저녁 공부 || 개발..
-
API 호출을 위한 세 가지 Spring 도구(Spring 6에서 새롭게 지원하는 HttpInterface)각종 학습 요약/Spring 2023. 3. 17. 14:12
개요 오늘 포스팅은 토비님의 'Spring 6의 새로운 HTTP Interface와 3 가지 REST Clients 라이브 코딩' 영상을 보고 나서 작성하는 글입니다. Spring에서 제공하는 RestTemplate과 WebClient, 그리고 Spring 6에서 새롭게 제공하게 된 HttpInterface를 간단히 살펴봅니다. 어떻게 사용되는지 하나씩 코드로 살펴보겠습니다. 1. RestTemplate 간단히 실행 결과 확인을 위해 ApplicationRunner를 사용합니다. RestTemplate은 Spring3.0 부터 사용되어온 동기 방식의 클라이언트입니다. Spring Web 프로젝트를 사용하면서 외부의 api를 호출할 일이 있으면 가장 편하게 선택할 수 있는 방법인 것 같아요. 사용 방법 자..
-
2월을 평가하는 회고회고 2023. 3. 12. 15:44
지난번 1월 회고를 작성한 이후로 코테 준비만 하던 생활에서 벗어났다. 코테에 치중하느라 소홀했던 나머지 공부에 할애하기 위해서였다. 프로젝트에 들어가기까지 3주 정도 걸릴 거라고 생각했고, 3주 이후에는 구직활동을 시작할 생각으로 면접 스터디를 시작하기로 했다. 3주 간의 일정을 짜놓고 진행을 했고, 어제부로 그 일정이 끝나서 한번 회고하고 다음 텀으로 넘어가려고 한다. 레벨업 경험치 쌓는 느낌으로, 꾸준히 반복하며 개선하려고 했는데 잘 되었는지 한번 곰곰히 생각해본다. 계획 먼저 세웠던 계획을 정리해보면, 모의면접과 알고리즘을 대비하면 좋을 것 같아 스터디를 모집했다. 화/금, 주 2회 오프라인에서 만나 진행하게 되었다. 스터디 일정이 끝난 후에는 모각코로 각자의 일정대로 학습을 진행했다. 스스로 생..
-
"2주만에(한달만에) 코테 준비 가능한가요?"에 대한 조언(w/1월 회고)회고 2023. 2. 22. 15:44
1월을 돌아보는 시간을 왜 이제 가지냐고 지금 2월도 다 갔는데...는 이전에 함께 스터디를 했던 주중님이 블로그에 댓글을 달아주셨기 때문이다. 마침 '싸피 가셨다고 했었는데... 요즘은 뭐하고 사시는지 궁금하네' 라고 생각하자마자 어제 달린 따끈따끈한 댓글이 달려있던 것이다. 안 그래도 매일 블로그를 열어보며 뭐라도 적어볼까 싶기도 했지만, 그러기에는 너무 정신없이 바쁘게 지냈더랬다. 뭘 하면서 바쁘게 지냈는지 이야기를 조금 늘어놔보자. 1월은 딱 하나에만 집중한 기간이었다. 사실 1월 뿐만 아니라 2월 중순, 그니까 지난주까지도 집중하는 기간이었다. 그래서 뭘했냐면. 코테 준비 했다. 나는 기존에 기본적인 입출력 정도는 무난무난하게 할 수 있었다(프로그래머스로 치면 0~1Lv, 백준으로 치면 실버 4..
-
2022년 회고회고 2023. 1. 5. 14:43
2022년은 도전의 한 해였다. 계획된 도전은 아니었지만 꽤 충실히 살았다고 생각한다. 그래서 지난 한 해를 어떻게 보냈는지 짧게나마 기록해두려고 한다. '요약', '히스토리' , '결론' 파트로 나누어 서술하려고 한다. 아마 뒤로 갈 수록 급격히 짧아질 듯 하다. 이제 막 개발 공부를 시작하는 사람이 있어서 빠르게 내용을 훑어보고 싶다면, 굵은 글자만 읽으면 될 거 같다. 요약 만족하는 점 개발을 시작한 것. 꼭 목표를 이뤄나가길 바란다. 여러 학습 방법을 시도하면서 나만의 학습전략을 찾은 것. 블로그 꾸준히 한 것. 동기부여를 줄 수 있는 귀중한 도구 중 하나였다. 잔디 꾸준히 심은 것. 작년 한 해 1,076개의 커밋로그를 찍었다. 비슷한 시기의 동료들과 ..
-
갑자기 프로젝트 바람이 돌아서기타 2022. 12. 16. 16:40
갑자기 프로젝트로 해결해보고 싶은 작은 니즈가 생겼다. 그래서 옵시디언 켜놓고 의식의 흐름대로 쭉쭉 작성해나간 뒤, 아카이빙 하고자 포스팅하는 글. 프로젝트를 해야겠다 : 스터디를 진행해야 하나 말아야 하나 하는 고민을 했는데, 스터디를 진행하는 플랫폼 프로젝트를 해봐야 할 것 같다. 동기: 그 동안 느낀 불편한 점이 많다. 모든 스터디원이 열심히 하고 싶으나, 대다수의 스터디의 끝은 폭망이다. 스터디가 성공적으로 끝나려면, 사실상 한 명이 캐리를 하는게 가장 좋다. 그런데 캐리하는 사람에게는 아무 보상이 없기 때문에, 중도에 포기하거나, 애초에 캐리를 하려고 하지 않는다. 적절한 보상이 주어진다면? 스터디원들의 열성적인 참여, 최소한 꾸준함이 보장될 필요가 있다. 그래서 '벌금 제도'가 ..
-
[Java Multithreading] Deadlock 해결 방안 2 - ReentrantLockJava/Multi Threading 기초 2022. 12. 16. 14:07
Java Multithreading 멀티스레딩의 개념과 Java에서의 활용법을 공부하고 정리하는 시리즈입니다. 안녕하세요! 오늘은 교착상태(Deadlock)을 해결하는 또 다른 솔루션에 대해 살펴보겠습니다. ReentrantLock Class 알아보기 java.util.concurrent.locks로 제공되는 ReentrantLock 클래스에 대해 살펴보겠습니다. ReentrantLock은 Lock 인터페이스의 구현체입니다. 마치 Synchronized와 같은 락을 제공하지요. 하지만 더 유용한 확장 기능을 함께 제공하고 있어요. Reentrant(재진입성) 키워드에 대한 이야기는 임계 영역과 동기화에 대해 설명하는 글 마지막에 부연설명으로 드렸던 적이 있기 때문에, 그 내용은 참고 부탁드리고요. 😇 s..
-
[Java Multithreading] DeadLock 해결 방안 1 - 순환 대기 회피Java/Multi Threading 기초 2022. 12. 15. 12:46
Java Multithreading 멀티스레딩의 개념과 Java에서의 활용법을 공부하고 정리하는 시리즈입니다. 안녕하세요! 이번 포스팅에서는 앞서 이야기했던 Deadlock이 일어나는 상황을 회피하기 위해 deadlock의 조건을 깨뜨리는 기법을 살펴보려고 합니다. 오늘 소개할 방법은 아주 간단하기 때문에, 간단한 수도코드 예제를 들어 설명을 하도록 하겠습니다. 순환 대기 (환형 대기, Circular wait) 깨뜨리기 순환 대기 상황을 코드로 설명해보겠습니다. 두 개의 수도코드가 등장합니다. // CODE 1 lock(A); lock(B); delete(A); add(B); unlock(B); unlock(A); // CODE 2 lock(B); lock(A); delete(B); add(A); un..