모든 포스트

자바스크립트 기초 #1 시작과 셋업
5 분 소요

자바스크립트 기초 #1 시작과 셋업

자바스크립트가 어디서 동작하는지부터 Node와 Vite로 모던 개발 환경을 만들고 첫 코드를 실행하는 단계까지 한 번에 정리합니다.

고 실전 #6 테스트와 배포 — httptest와 Docker
5 분 소요

고 실전 #6 테스트와 배포 — httptest와 Docker

httptest로 핸들러 테스트, 통합 테스트 패턴, Docker 멀티스테이지 빌드, 작은 운영 체크리스트까지 정리합니다.

고 실전 #5 미들웨어 패턴
5 분 소요

고 실전 #5 미들웨어 패턴

http.Handler 어댑터 체인으로 만드는 표준 미들웨어를 다룹니다. 로깅, 인증, 패닉 복구, 요청 ID, CORS까지 정리합니다.

고 실전 #4 DB 연동 — database/sql과 트랜잭션
5 분 소요

고 실전 #4 DB 연동 — database/sql과 트랜잭션

database/sql 기본기, prepared statement, 트랜잭션, 커넥션 풀 설정을 다룹니다. 그리고 sqlc,sqlx,GORM 같은 위층 도구까지 정리합니다.

고 실전 #3 JSON 입출력과 입력 검증
5 분 소요

고 실전 #3 JSON 입출력과 입력 검증

encoding/json의 Marshal/Unmarshal, struct 태그, 디코딩 에러 처리, 그리고 안전한 입력 검증 패턴까지 정리합니다.

고 실전 #2 라우팅 — Go 1.22+ ServeMux
4 분 소요

고 실전 #2 라우팅 — Go 1.22+ ServeMux

Go 1.22+ 부터 들어온 표준 ServeMux의 메서드/패턴 매칭을 다룹니다. chi, gorilla/mux 같은 외부 라우터가 필요한 경우도 함께 정리합니다.

고 실전 #1 첫 HTTP 서버
4 분 소요

고 실전 #1 첫 HTTP 서버

net/http 한 패키지로 시작하는 가장 작은 서버를 만들어봅니다. ListenAndServe, HandleFunc, ResponseWriter, 그리고 graceful shutdown까지 정리합니다.

고 고급 #7 코드 생성 — go generate와 stringer
5 분 소요

고 고급 #7 코드 생성 — go generate와 stringer

reflect의 런타임 비용을 피하는 길은 컴파일 타임 코드 생성입니다. go generate 워크플로우, stringer, mockgen 같은 도구를 정리합니다.

고 고급 #6 프로파일링 — pprof와 benchmark
4 분 소요

고 고급 #6 프로파일링 — pprof와 benchmark

go test -bench, pprof로 CPU,메모리,고루틴 프로파일을 떠 봅니다. 성능을 추측 대신 측정으로 다루는 법을 정리합니다.

고 고급 #5 unsafe와 cgo — 안전 영역 밖으로
5 분 소요

고 고급 #5 unsafe와 cgo — 안전 영역 밖으로

unsafe.Pointer의 네 가지 규칙, cgo의 트레이드오프, 그리고 둘 다 거의 안 써야 하는 이유를 정리합니다.

고 고급 #4 reflect 패키지 — 런타임에 타입 다루기
5 분 소요

고 고급 #4 reflect 패키지 — 런타임에 타입 다루기

reflect.Type과 reflect.Value, struct 태그 읽기, 동적 호출까지 다룹니다. 직렬화 라이브러리 안쪽에서 보이는 도구를 정리합니다.

고 고급 #3 제네릭 — type parameter와 constraint
5 분 소요

고 고급 #3 제네릭 — type parameter와 constraint

Go 1.18에 들어온 제네릭을 다룹니다. type parameter 문법, constraint, comparable과 ~ 토큰, 그리고 언제 안 쓰는 게 좋은지까지 정리합니다.