본문으로 이동
내 타입스크립트 코드가 이렇게 느릴 리 없어! | 2024 당근 테크 밋업
컨퍼런스

내 타입스크립트 코드가 이렇게 느릴 리 없어! | 2024 당근 테크 밋업

당근 밋업 당근 · YouTube

원문 보기

AI 핵심 요약

당근의 모노레포에서 특정 서비스의 타입 추론이 느려져 저장 후 오류 표시까지 오래 걸리는 문제가 발생했다. `extendedDiagnostics`로 타입 체크 시간을 확인하고 `generateTrace`, `@typescript/analyze-trace`, Perfetto를 활용해 원인을 추적한 결과, 모든 HTML 태그를 허용하는 UI 컴포넌트 타입이 거대한 유니온을 만들어 비교 비용을 키우고 있었다. 허용 태그를 좁히고 제네릭을 이용해 사용 시점에 타입을 추론하도록 바꾸자 체크 시간이 42초에서 11초로 줄었다. 발표에서는 인터페이스 선호, 복잡한 타입에 이름 붙이기 등 컴파일하기 쉬운 타입 작성법도 성능 개선에 도움이 된다고 설명했다.

  • 먼저 `extendedDiagnostics`로 컴파일 단계별 시간을 확인하고, 타입 체크가 병목인지 구분하세요.
  • `generateTrace` 결과는 `@typescript/analyze-trace`로 핫스팟을 찾고, Perfetto로 이벤트와 타입 비교를 더 자세히 살펴볼 수 있습니다.
  • 컴포넌트가 모든 HTML 태그를 허용하면 큰 유니온 타입이 파생될 수 있으므로, 필요한 태그만 허용하거나 제네릭으로 사용 시점에 타입을 추론하세요.
  • 타입스크립트 성능을 고려할 때 교차 타입보다 인터페이스를 우선하고, 복잡한 타입에는 별칭을 붙여 구조를 단순하게 만드세요.

소개

타입스크립트로 개발하면서 점점 느려지는 코드 추론 속도 때문에 고민했던 적 있으신가요? 시간이 지남에 따라 코드베이스가 커졌으니 자연스러운 수순이라고 생각할 수 있어요. 그런데 혹시 잘못 작성한 타입 때문에 타입 추론이 느려지고 있었다면요? 이 세션에서는 잘못된 타입이 타입스크립트 추론 속도를 어떻게 저하시키는지 살펴보고, 타입 추론의 병목 지점을 진단하고 해결할 수 있는 방법을 소개해요. 🥕 영상을 보고 당근에 관심이 생기셨다면 채용 공고를 확인해보세요! https://about.daangn.com/jobs/

비슷한 학습 자료

컨퍼런스 당근 밋업

당근은 중고거래를 넘어 커뮤니티, 알바 등 다양한 ‘당신 근처의’ 서비스로 빠르게 확장해 나가고 있어요. 서비스가 빠르게 확장되는 만큼, 사용자가 당근을 안전하고 편리하게 이용할 수 있도록 지원하는 운영 환경도 빠르게 대응할 수 있어야 하죠. 당근의 운영개발팀은 빠른 대응을 위해 언제나 확장성, 생산성 그리고 설정 가능성을 염두에 두고 개발에 임하고 있어요. 이 세션에서는 실제 당근의 문의 처리 도구를 개선하는 과정에서 역할 분리, 메타 프로그래밍, 규칙 기반 UI 생성, 설정 분리와 같은 다양한 기법을 활용해 빠른 대응이 가능한 시스템을 어떻게 구축했는지 공유하고자 해요. 이와 함께, 이러한 기법을 실제로 적용할 때 유의해야 할 점에 대해서도 다뤄요. 반복되는 비슷한 코드 작업에 지치신 분, 더 효율적이고 생산적으로 일하고 싶은 모든 개발자에게 이 세션이 인사이트를 제공할 수 있길 기대해요! 🥕 영상을 보고 당근에 관심이 생기셨다면 채용 공고를 확인해보세요! https:/...

백엔드

컨퍼런스 당근 밋업

당근의 2023 INFCON 기업프로그램 세션을 공개합니다. 이번 INFCON 에서는 당근의 개발 문화, 기술과 관련된 다양한 주제로 이야기를 나눠보았어요. 🥕 당근 공고 살펴보기 : https://about.daangn.com/jobs/ 🥕 당근 2023 INFCON 다른 영상 확인 : https://www.youtube.com/playlist?list=PLaHcMRg2hoBqVWF6855yG_nIrYC6bXkyy

프로그래밍 언어

컨퍼런스 엔지니어링데이 2025

네이버 사내 기술 교류 행사인 NAVER ENGINEERING DAY 2024(10월)에서 발표되었던 세션을 공개합니다. [발표 내용] 타입시스템으로 도메인을 모델링하는 기법을 소개하고, 복잡한 도메인에서 보이지 않는 오류를 막을 수 있는 방법을 소개합니다. [목차] - 커피 주문 - 도메인과 도메인 모델 - 대수적 데이터 타입(Algebraic Data Type) - 현금 영수증 발급 수단 - 안전성과 비용관계 - 안전성의 의미 - 원시타입에 대한 집착 - 런타임 안전성 vs 컴파일 타임 안전성 - 실전 도메인: 주문서 결제수단 - 정리

프로그래밍 언어

컨퍼런스 엔지니어링데이 2025

네이버 사내 기술 교류 행사인 NAVER ENGINEERING DAY 2024(5월)에서 발표되었던 세션을 공개합니다. [발표 내용] TypeScript의 타입 추론 원리를 타입 이론과 순서론에 근거하여 학습 실전 라이브러리 개발에서 풀 법한 문제 풀이 [대상] TypeScript 고급 사용자 라이브러리 개발 / 오픈소스 참여 등을 생각하시는 분 [기초 / 고급 / 응용] 00:00 ~ 31:09 기초타입이론 32:29 ~ 46:05 고급타입추론 46:06 ~ 1:12:03 응용문제

웹 개발 프로그래밍 언어

책 조현영 예스24

타입스크립트 교과서

책 조현영 예스24

타입스크립트 문법은 실전에서 어떻게 쓰이는가? 타입 정의를 분석하고, 직접 타입을 만들 수 있는가? 실전을 위한 기본기, 실제 라이브러리 타입 분석, 실무/실용적인 조언을 모두 담았다! (All in One) Q: 타입스크립트를 어떻게 공부해야 할까요? A: 타입스크립트를 공부할 때 가장 막막한 건 막상 문법은 다 배웠는데 실전에서 응용하지 못한다는 것입니다. 인터페이스, 타입 애일리어스, 제네릭, 맵드 타입스, 인덱스드 시그니처 등을 배워도 언제 어떤 문법을 사용해야 하는지 모르는 경우입니다. 다른 사람이 만든 타입을 분석하거나, 직접 타입을 만드는 데 어려움을 겪는다면 타입스크립트 문법이 실전에서 어떻게 쓰이는지 배우고, 타입을 어떤 식으로 작성해나가면 되는지를 직접 실습해보세요. 이 책은 직접 타입을 분석하여 쓸 수 있도록 만들어 드립니다. 타입스크립트를 깊이 이해하고, 정확하고 효율적으로 사용하도록 알려 드립니다. _제로초(조현영)

프로그래밍 언어 로드맵 1개에 담김

책 댄 밴더캄(Dan Vanderkam) 예스24

이펙티브 타입스크립트 2판

책 댄 밴더캄(Dan Vanderkam) 예스24

타입스크립트를 더 효과적으로 사용하기 위한 83가지 방법 타입스크립트는 자바스크립트의 한계를 보완할 잠재력을 지닌 정적 타입 기반의 슈퍼셋 언어입니다. 그러나 타입스크립트 또한 학습 곡선이 존재하며, 효과적으로 활용하기 위해서는 시간과 연습이 필요합니다. 이 책은 「이펙티브 C++」와 「이펙티브 자바」의 형식을 따른 실용서로, 해야 할 것과 하지 말아야 할 것, 그리고 언어에 대해 사고하는 법을 다룬 83가지 조언을 담고 있습니다. 저자 댄 밴더캄은 실제 예제를 통해 각 조언을 어떻게 적용할 수 있는지를 보여 줍니다. 이 책의 목표는 타입스크립트의 기본기를 익힌 초급 및 중급 개발자가 언어를 능숙하게 다루는 고급 사용자로 성장하도록 돕는 것이며, 타입스크립트 5에 맞춰 개정된 2판에서는 타입 수준 프로그래밍과 타입스크립트 레시피를 다루는 두 개 장이 추가되었습니다.

프로그래밍 언어