[코테 중간 점검] 코드트리 갭체크로 한 달 만에 다시 본 극복한 후기
·
알고리즘/코드트리
첫 갭체크 때 받은 결과와 이번 갭체크 결과 비교 (비포 & 애프터)한달 전현재 여전히 완전탐색 2 단계는 어렵고 도전적인 과제이. 하지만 완전탐색 1 단계를 확실히 내 것으로 만들었다는 자신감을 바탕으로, 다음 단계를 정복할 준비를 하고 있습니다. 지난 한 달간 약점을 보완하기 위해 코드트리에서 했던 구체적인 노력사실 우아한테크코스 미션과 일정을 소화하느라 물리적인 시간이 턱없이 부족했습니다. 절대적인 문제 양을 늘리기보다는 '질적인 유지'와 '효율성'에 집중했다.새로운 문제를 많이 풀지 못하는 대신, 이미 풀었던 문제를 머릿속으로 다시 설계하고 복기(오답노트 및 주석 정리)하면서 알고리즘적 감각과 뇌 세포를 깨워두는 데 집중했다. 처음엔 막막했던 약점 유형이 점차 풀리며 '강점'으로 바뀌고 있다고 실..
Level 2 - LocalDateTime.now() 당당하게 도메인 내부에 사용하기.
·
우아한 테크 코스 8기
0. 개요Reservation 객체 내부에 LocalDateTime.now()를 직접 사용하게된 이유. 1. Non-Testable테스트를 작성할 때, Non-Testable Code와 Testable 코드가 존재한다.Non-Testable한 코드는 주로 Random, Shuffle, LocalDate.now()처럼 제어할 수 없는 영역을 의미한다.위 그림을 보면, Non-Testable Code가 Method Call Tree 가장 하위에 있으면, 이 Non-Testable Code에 의존하는 모든 Method Call Tree는 테스트할 수 없게된다.가장 하위의 영역을 도메인이라고 생각하면 이해가 쉽다.public class Reservation { private Long id; ..
[코드트리 후기] 북마크 기능으로 오답 루틴 만들기
·
카테고리 없음
0. 개요코딩 테스트를 깨작깨작 풀면서 한가지 느낌점이 있다. 바로 문제를 풀었다고 넘어가는 게 아니라, 문제를 풀면서 내가 생각한 사고 과정을 정리하고, 까먹지 않도록 복습하는 것이다.그러지 않으면 오랜만에 그 문제를 풀었을 때, 안풀리는 현상을 겪는다.어느 정도 수준에서는 양치기를 하며 감을 잡고, 그 다음부터는 한 문제를 풀 때, 완전히 내 것으로 만들려고 노력해야겠다고 생각했다.이번주는 코드트리의 북마크 기능을 활용해서, 복습 북마크를 구축해보았다. 1. 북마크 폴더 만들기문제를 풀 때, 단순히 2가지 유형으로 나뉘는 거 같았다.첫번째는 나중에 못풀거 같은 문제이다. 해설이나, AI의 도움을 받아서 푼 문제이다. 이런 문제의 유형이 코딩테스트에 나오면 나의 것으로 만들지 못했기 때문에 절대 풀지 ..
Level 2 - 서비스에 존재하는 검증, 판단로직을 도메인으로 응집화하기
·
우아한 테크 코스 8기
0. 개요예약 생성 기능을 구현하다 보면 어느 순간 이런 질문에 부딪힌다."이 예약 요청이 예약(RESERVED)이어야 할까, 대기(WAITING)이어야 할까?"단순해 보이지만, 이 판단에는 여러 조건이 얽혀 있다. 해당 슬롯에 이미 예약자가 있는지, 요청자가 이미 예약 또는 대기 중인지....문제는 ReservationService 안에 이 모든 판단이 쌓일 때 발생한다.이 글은 List을 그대로 서비스에서 순회하던 구조를, Reservations라는 도메인 객체로 감싸 판단 규칙을 응집시키는 과정을 다룬다. 1. 서비스가 떠안은 판단들처음 예약요청 구조에서 서비스는 단순히 비즈니스 흐름 조율을 넘어서, 예약 목록을 직접 해석하고 상태를 결정하는 역할까지 맡고 있었다. @Transactional ..
[코드트리] 코드트리로 매일 학습 루틴 만들기
·
알고리즘
0. 개요최근 우테코 미션으로 바빠, 코딩테스트 공부를 못하면서 느낀 건 "매일 꾸준히 앉아 있는 것"이 훨씬 어렵다는 사실이다.처음 코드트리에 가입할 때 꼬였던 전화번호 인증 오류가 일주일 만에 해결되고 본격적으로 학습을 시작한 지 어느덧 3주 차에 접어들었다. 1주 차에는 갭체크로 약점을 파악했고, 2주 차부터는 시뮬레이션과 완전탐색(Brute Force) 문제들을 풀며 감각을 끌어올리고 있다. 하지만 문제 자체의 난이도보다 나를 괴롭힌 건 바로 '꾸준함'이었다.우테코 미션으로 장기(체스) 게임이나 방탈출 예약 시스템 같은 과제들을 구현하고 리뷰에 집중하다 보면, 하루 이틀 코딩테스트 공부를 건너뛰게 되는 일이 잦았다. 결국 흐지부지될 뻔했던 내 학습 루틴을 멱살 잡고 끌고 와준 코드트리의 두 가지 ..
[코드트리] 완전탐색 알고리즘 약점 극복해보기
·
알고리즘
0. 개요코드트리 청약 챌린지 3주차 1. 코드트리 커리큘럼단순히 문제 하루에 하나씩 간단하게 풀어야지 마음먹어서 잘 몰랐다.근데, 알고리즘 풀이 버튼이 "코드트레일"이다. 의식적으로 생각해보니, 기차가 노선을 따라 앞으로 나아가듯, 알고리즘 문제를 풀어가면서 앞으로 나아간다는 의미같다.정말 그럴까...? 2. 학습완전 탐색에 대해서 레슨별로 차근차근 문제를 풀어볼 수 있었고, 점점 풀어갈 수록 그 알고리즘 분야에 대해 자신감이 확실히 생긴다.그리고 문제를 풀기 전에, 참고할만한 기본 개념에 대해서 알려주기 때문에, 정말 모르겠거나 내가 놓치고 있는 부분이 뭔지 모르겠을 때, 기본개념을 참고하면 풀리는 경우가 많았다.글을 잘 못읽는 편이라, 시각 자료를 좋아하는데,내용 설명글과 시각 자료가 적절하게 배치..
Spring MVC (제목 미정)
·
Spring
0. 개요디버깅을 통해, 학습한 Spring MVC 내용을 정리한다.
[코드트리 후기] 코딩테스트 준비, 갭체크부터 시작하기 2회차 미션
·
알고리즘/코드트리
0. 개요코드트리 청약통장 챌린지 도전.코드트리를 최대 8월 22일까지 이용할 수 있는 챌린지가 있다고 우연히 학교 개발자 톡방에서 소식을들었다.그래도 일주일에 두세문제는 풀어봐야겠다고 다시 생각이 들던 차.... 백준도 없어지고.... 어쩌지 하다가, 이번 기회를 통해, 코드트리를 사용해보기로했다.나는 챌린지 마감 전에 신청해서, 2주차 갭체크부터 시작했다. 1. 갭체크갭체크는 쉽게 말하면 실력진단이다.내 스스로 어느 수준인 지 체크한 다음, 코드트리에서 진단하기 위한 문제를 제공한다.3개를 틀리면 종료된다. 2. 후기우선, 코딩테스트를 각잡고 준비해본 적이 없어서, 나의 약점을 잘 몰랐는데, 내가 모르는 부분을 알려주고 가이드라인을 제시해주는 거 같아 좋았다.Basic Syntax와 DP를 골랐는데 ..
Level 1 회고
·
우아한 테크 코스 8기
0. 개요 1. 공부 2. 기록 3. AI 4. 소프트 스킬