목록2025/08 (4)
개발자공부일기
auto란 무엇인가?auto는 C++11부터 도입된 타입 추론 키워드입니다. 즉, 변수 선언 시 개발자가 자료형을 직접 쓰지 않아도 컴파일러가 자동으로 판단하여 변수 타입을 정해줍니다.예전에는 반복자를 다음과 같이 선언해야 했습니다.std::vector::iterator it = vec.begin();하지만 auto를 사용하면 아래처럼 훨씬 간단하게 쓸 수 있습니다.auto it = vec.begin();auto의 주요 특징복잡한 타입도 자동 처리: 반복자, 람다, map, pair 등에서 유용코드 가독성 향상: 자료형 생략으로 깔끔한 코드 작성 가능유지보수에 유리: 자료형이 바뀌어도 변수 선언을 바꿀 필요가 없음rbegin()과 rend()란 무엇인가?STL 컨테이너에서는 일반적으로 begin()과 e..
DFS (Depth-First Search)1. DFS란?DFS는 깊이 우선 탐색이라 하며, 한 정점에서 시작해 갈 수 있는 한 깊이 들어갔다가, 더 이상 갈 수 없으면 이전 지점으로 되돌아오는(backtracking) 방식의 그래프 탐색 알고리즘이다.스택(Stack) 자료구조를 사용하거나, 재귀 호출을 통해 시스템 호출 스택을 활용한다.2. DFS의 원리시작 정점을 방문하고 방문 표시를 한다.현재 정점에서 갈 수 있는 이웃 정점 중 아직 방문하지 않은 정점을 하나 선택해 이동한다.이동한 정점에서 1~2 과정을 반복한다.더 이상 방문할 이웃이 없으면 이전 정점으로 되돌아가 다른 경로를 탐색한다.모든 정점을 방문할 때까지 반복한다.3. 반복형 DFS 코드vector dfs_iter(int start, co..

Windows에서 WSL2를 사용하다 보면, 메모리나 CPU 사용량이 과도하게 올라가서 컴퓨터 전체 성능에 영향을 줄 때가 있습니다.이럴 때 .wslconfig 파일을 사용하면 WSL2 전체의 자원 사용량을 직접 제어할 수 있습니다.이번 글에서는 .wslconfig 파일 생성부터 적용 확인까지 과정을 정리해 보겠습니다.1. .wslconfig 파일이란?위치: C:\Users\\.wslconfig역할: WSL2 전역(Global) 설정 파일특징: Ubuntu, Debian 같은 모든 WSL2 배포판과 Docker Desktop까지 설정이 한 번에 적용됩니다.즉, 한 번 설정하면 내 컴퓨터에서 실행되는 WSL2 전체 환경에 공통으로 반영됩니다.2. .wslconfig 파일 만들기메모장 실행아래와 같은 내용을..
최근 프로젝트에서 Middleware를 통해 인증 로직을 추가하던 중, 문제가 발생했다.JWT 토큰을 검증하기 위해 jsonwebtoken 라이브러리를 사용했는데, 실행 시 "Edge 환경에서는 지원되지 않는다"는 에러가 나온 것이다.분명히 환경을 바꾼 적이 없는데, 왜 Edge 환경에서 실행되는 걸까?이번 글에서는 Next.js에서 Node.js와 Edge 환경이 각각 어디서 실행되고, 어떤 차이가 있는지를 정리해본다.Next.js 안의 실행 영역Next.js 프로젝트는 단순히 서버에서만 돌아가는 게 아니다. 내부적으로 여러 실행 영역이 나뉘어 있고, 각각의 영역이 다른 런타임을 사용한다. 크게 네 가지로 나눌 수 있다.브라우저(Client)사용자의 PC나 스마트폰에서 실행되는 부분React 클라이언..