infer, never만 보면 두려워지는 당신을 위한 고급 TypeScript
엔지니어링데이 2025 네이버 · YouTube
AI 핵심 요약
라이브러리 개발에서는 복잡한 제네릭 타입을 직접 읽고 검증해야 하지만, TypeScript의 추론 규칙을 모르면 `infer`와 `never`가 얽힌 선언을 이해하기 어렵다. 발표자는 타입 이론과 순서론을 바탕으로 서브타입 관계, 공변·반변, 제네릭 추론과 오버로드의 동작을 설명했다. 이어 조건부 타입과 재귀 타입을 조합해 중첩 객체를 평탄화하면서 리터럴 타입과 유니온 정보를 보존하는 함수의 타입을 구현했다. 정밀한 타입 추론은 라이브러리 사용성을 높일 수 있지만 복잡성과 가독성 비용이 따르므로, 필요한 수준을 판단하고 타입 테스트로 검증해야 한다는 점을 강조했다.
- 타입의 대소 관계를 값의 대입 가능성으로 해석하면 타입 호환 오류를 체계적으로 판단할 수 있다.
- 함수 타입은 반환값에서 공변, 매개변수에서 반변이 적용되며 매개변수 개수도 호환성에 영향을 준다.
- 오버로드는 선언 순서대로 타입 인자 추론이 시도되므로 더 구체적인 시그니처를 앞에 두는 편이 안전하다.
- 조건부 타입의 분배 동작을 활용하면 유니온을 구성원별로 필터링하거나 변환할 수 있다.
- 재귀 조건부 타입은 평가가 무한히 반복되지 않도록 지연 평가와 종료 조건을 함께 설계해야 한다.
소개
네이버 사내 기술 교류 행사인 NAVER ENGINEERING DAY 2024(5월)에서 발표되었던 세션을 공개합니다. [발표 내용] TypeScript의 타입 추론 원리를 타입 이론과 순서론에 근거하여 학습 실전 라이브러리 개발에서 풀 법한 문제 풀이 [대상] TypeScript 고급 사용자 라이브러리 개발 / 오픈소스 참여 등을 생각하시는 분 [기초 / 고급 / 응용] 00:00 ~ 31:09 기초타입이론 32:29 ~ 46:05 고급타입추론 46:06 ~ 1:12:03 응용문제
비슷한 학습 자료
컨퍼런스 당근 밋업
내 타입스크립트 코드가 이렇게 느릴 리 없어! | 2024 당근 테크 밋업
컨퍼런스 당근 밋업
타입스크립트로 개발하면서 점점 느려지는 코드 추론 속도 때문에 고민했던 적 있으신가요? 시간이 지남에 따라 코드베이스가 커졌으니 자연스러운 수순이라고 생각할 수 있어요. 그런데 혹시 잘못 작성한 타입 때문에 타입 추론이 느려지고 있었다면요? 이 세션에서는 잘못된 타입이 타입스크립트 추론 속도를 어떻게 저하시키는지 살펴보고, 타입 추론의 병목 지점을 진단하고 해결할 수 있는 방법을 소개해요. 🥕 영상을 보고 당근에 관심이 생기셨다면 채용 공고를 확인해보세요! https://about.daangn.com/jobs/
프론트엔드 프로그래밍 언어
컨퍼런스 엔지니어링데이 2025
타입시스템 기반 도메인 모델링 - 보이지 않는 오류를 막아라
컨퍼런스 엔지니어링데이 2025
네이버 사내 기술 교류 행사인 NAVER ENGINEERING DAY 2024(10월)에서 발표되었던 세션을 공개합니다. [발표 내용] 타입시스템으로 도메인을 모델링하는 기법을 소개하고, 복잡한 도메인에서 보이지 않는 오류를 막을 수 있는 방법을 소개합니다. [목차] - 커피 주문 - 도메인과 도메인 모델 - 대수적 데이터 타입(Algebraic Data Type) - 현금 영수증 발급 수단 - 안전성과 비용관계 - 안전성의 의미 - 원시타입에 대한 집착 - 런타임 안전성 vs 컴파일 타임 안전성 - 실전 도메인: 주문서 결제수단 - 정리
프로그래밍 언어
컨퍼런스 INFCON 2024
멀티패러다임 프로그래밍 언어의 시대: 객체지향과 함수형을 섞어야할 때!│인프콘2024
컨퍼런스 INFCON 2024
🌱 인프런 에서 인프콘2024 강의 자료 다운로드 받고 복습해보세요. 🩵 강의 자료 다운 받기 : https://u.inf.run/4cLhYyK 🌱 인프런과 함께 배우고, 나누고, 성장하세요. 🩵 멀티패러다임 프로그래밍 언어의 시대: 객체지향과 함수형을 섞어야할 때! - 유인동 함수형, 객체지향 패러다임을 모두 제공하는 멀티패러다임 언어를 효율적으로 사용하는 법 - 타입스크립트로 Tagged Templates를 만들면서 멀티패러다임 개발 패턴을 소개합니다. #인프콘 #인프런 #인프콘2024 #인프콘2024다시보기
프로그래밍 언어