안녕하세요.
|
백엔드 개발자 손민기입니다.

thumbnail
디렉토리로는 안 보이는 '로직'까지 — Understand-Anything으로 Redux 미들웨어 해부하기

지난 글에서 Understand-Anything으로 코드베이스를 지식 그래프로 만드는 걸 소개했다. 그런데 한 가지 짚고 넘어갈 게 있다. “모듈 의존성 그래프? 그건 그냥 디렉토리 열면 보이잖아.” 맞는 말이다. 폴더 구조와 import 관계는 와 만 봐도 대충 안다. 그래서 이번엔 도구의 진짜 값어치, 즉 “이 코드가 실제로 무슨 일을 하는가“를 끌어내는 데 집중했다. 대상은 모두가 아는 Redux 코어다. 디렉토리 뷰 vs 로직 뷰 Redux 코어()는 17개 파일, 핵심은 10개 남짓이다. 디렉토리를 열면 이렇게 보인다. 여기서 알 수 있는 건 “파일이 있다” 는 것뿐이다. 가 를 쓴다는 것까지는 import로 보이지만 — “미들웨어가 대체 어떻게 dispatch를 가로채는가” 는 0% 안 보인다. 그게 로직이다. 로 분석하면 각 노드에 plain-English 요약과 관계가 붙는다. 예를 들어 노드를 누르면 이런 설명이 나온다. “함수 우→좌 합성. 로 생성 — 미들웨…

May 28, 2026
Tech
Obsidian 볼트를 지식 그래프로: Understand-Anything으로 내 노트 연결 구조 보기

지난 글에서 Understand-Anything으로 코드베이스를 지식 그래프로 시각화하는 방법을 다뤘다. 그런데 이 도구에는 코드 분석 말고도 숨은 기능이 하나 더 있다. 바로 다. 이 명령어는 마크다운 위키(지식 베이스)를 분석한다. 그리고 그 감지 조건이 사실상 Obsidian 볼트 구조와 동일하다. 즉, 내가 몇 년간 쌓아온 Obsidian 노트를 그대로 지식 그래프로 만들 수 있다는 뜻이다. Obsidian 그래프 뷰의 한계 Obsidian에는 이미 그래프 뷰가 있다. 노트들이 점으로 표시되고 로 연결된다. 처음 보면 멋있다. 그런데 노트가 수백 개 쌓이면 이렇게 된다. 점이 너무 많아 그냥 털뭉치(hairball)가 된다 노드를 클릭해도 보이는 건 파일명뿐 명시적으로 를 건 연결만 보인다 — 내용상 관련 있지만 링크를 안 단 노트는 따로 논다 “이 주제 노트들이 실제로 어떤 흐름으로 연결되는가”는 알 수 없다 결국 그래프 뷰는 “예쁜 시각화”에 머무는 경우가 많다. 정작 …

May 27, 2026
Tech
Claude Skills 핵심 정리: AI를 도메인 전문가로 만드는 방법

Claude가 단순한 챗봇이 아니라 도메인 전문가처럼 동작하게 만들 수 있다. Claude Skills를 사용하면 된다. Claude Skills란? Claude Skills는 Anthropic의 Claude AI에 특정 능력을 부여하는 확장 모듈이다. 각 스킬은 폴더 단위로 구성되며, 내부에는 다음이 포함된다: - 스킬 설명 및 트리거 조건 관련 코드 및 스크립트 참조 문서 및 예시 핵심은 지연 로드(Lazy Loading) 다. 수백 개의 스킬을 등록해도 필요한 스킬만 불러오기 때문에 토큰 낭비가 없다. 왜 Skills인가? 기존 프롬프트 엔지니어링의 한계: 기존 방식 Claude Skills 매번 긴 시스템 프롬프트 작성 스킬 이름만 호출 컨텍스트 윈도우 낭비 필요한 스킬만 로드 재사용 어려움 폴더 복사로 공유 일관성 유지 힘듦 버전 관리 가능 실제 사용 예시: Awesome Claude Skills 저장소 VoltAgent/awesome-claude-skills는 Anth…

May 25, 2026
Tech
Python asyncio 기초

핵심 개념 (왜 필요한가) 는 대기 시간이 긴 작업을 겹쳐서 처리할 때 강력하다. 특히 HTTP 호출, DB 드라이버, 메시지 큐처럼 CPU보다 I/O 대기가 많은 백엔드 작업에서 요청 처리량을 높이는 데 유용하다. 실무에서는 “빠른 코드”라기보다, 같은 시간에 더 많은 대기 작업을 처리하는 방식으로 이해하면 가장 정확하다. 기본 사용법 의 핵심은 , , 그리고 이벤트 루프다. 는 시간이 걸리는 작업이 끝날 때까지 스레드를 붙잡지 않고 다른 코루틴에 실행 기회를 넘긴다. 실행해보면 2초 + 1초 + 3초가 아니라, 가장 오래 걸린 3초 정도만 걸린다. 이게 의 가장 중요한 포인트다. 순차 처리 대신 동시 대기를 만든다. 는 여러 코루틴을 한 번에 실행하고 결과를 순서대로 모아준다. 백엔드에서 외부 API 여러 개를 병렬 호출할 때 자주 쓴다. 실전 예제 실무에서 흔한 패턴은 “여러 API를 동시에 호출하되, 실패를 안전하게 처리”하는 형태다. 아래 예시는 외부 서비스 호출을 흉내 …

May 24, 2026
Python