타입스크립트

타입스크립트 심화 #7 실전 패턴과 안티패턴
8 분 소요

타입스크립트 심화 #7 실전 패턴과 안티패턴

좋은 타입과 과한 타입을 가르는 기준을 다룹니다. any/unknown/never, as const와 satisfies, 그리고 자주 빠지는 안티패턴들과 그 해결법까지 정리합니다.

타입스크립트 심화 #6 모듈과 .d.ts
7 분 소요

타입스크립트 심화 #6 모듈과 .d.ts

외부 라이브러리의 타입을 어떻게 다루고 확장하는가 — 선언 파일(.d.ts), declare 키워드, module augmentation, 그리고 글로벌 타입 추가까지 정리합니다.

타입스크립트 심화 #5 Discriminated union과 타입 가드 깊이
7 분 소요

타입스크립트 심화 #5 Discriminated union과 타입 가드 깊이

여러 모양의 데이터를 안전하게 다루는 모델링 — discriminated union, 사용자 정의 타입 가드, assertion 함수, 그리고 branded types까지 정리합니다.

타입스크립트 심화 #4 Template literal types
5 분 소요

타입스크립트 심화 #4 Template literal types

문자열을 타입 단계에서 합성하는 도구를 다룹니다. `${...}` 패턴, Capitalize/Uppercase 빌트인, 그리고 라우트/이벤트 이름을 타입으로 모델링하는 실전 패턴까지 정리합니다.

타입스크립트 심화 #3 Conditional types와 infer
7 분 소요

타입스크립트 심화 #3 Conditional types와 infer

타입 단계의 if문 — T extends U ? X : Y의 분배 동작과 infer로 타입 안의 값을 끌어내는 패턴, ReturnType과 Awaited를 직접 만들어 봅니다.

타입스크립트 심화 #2 Mapped types
5 분 소요

타입스크립트 심화 #2 Mapped types

객체 타입을 한 번에 변환하는 mapped types — Partial/Required/Readonly가 어떻게 만들어졌는지부터 키 리매핑(as), modifier(+/-)까지 정리합니다.

타입스크립트 심화 #1 keyof와 typeof
6 분 소요

타입스크립트 심화 #1 keyof와 typeof

타입을 만드는 가장 기본 도구 두 가지를 다룹니다. keyof로 키를 모으고 typeof로 값에서 타입을 끌어오는 법, 그리고 둘이 만나면 가능해지는 패턴들까지 정리합니다.

타입스크립트 + React 실전 #6 fetch와 API 응답 타이핑
6 분 소요

타입스크립트 + React 실전 #6 fetch와 API 응답 타이핑

제네릭 fetcher의 한계와 위험, 그리고 zod 런타임 검증으로 외부 데이터를 정말 안전하게 다루는 패턴까지 정리합니다.

타입스크립트 + React 실전 #5 Context와 제네릭 컴포넌트
6 분 소요

타입스크립트 + React 실전 #5 Context와 제네릭 컴포넌트

createContext 타입 인자 패턴과 안전한 useContext 헬퍼, 그리고 제네릭 컴포넌트로 재사용 가능한 List/Select 같은 컴포넌트를 만드는 법을 정리합니다.

타입스크립트 + React 실전 #4이벤트와 폼 타이핑
6 분 소요

타입스크립트 + React 실전 #4이벤트와 폼 타이핑

React이벤트 객체에 어떤 타입을 쓰는지, 제어/비제어 폼을 타입스크립트로 어떻게 잡는지 실전 패턴으로 정리합니다.

타입스크립트 + React 실전 #3 hooks 타이핑
7 분 소요

타입스크립트 + React 실전 #3 hooks 타이핑

useState/useReducer/useRef/useCallback/useMemo까지 빌트인 hook들의 타입을 어디까지 추론에 맡기고 언제 명시할지 정리합니다.

타입스크립트 + React 실전 #2 props와 children 타이핑
7 분 소요

타입스크립트 + React 실전 #2 props와 children 타이핑

props 타입을 어떻게 정의하고 어디까지 좁혀야 하는지, optional prop,union prop,children 패턴까지 실전에서 자주 만나는 결정을 정리합니다.