본문 바로가기

tRPC v10 출시

· 1분 읽기
Alex / KATT 🐱
Creator of tRPC
비공식 베타 번역

이 페이지는 PageTurner AI로 번역되었습니다(베타). 프로젝트 공식 승인을 받지 않았습니다. 오류를 발견하셨나요? 문제 신고 →

tRPC는 TypeScript의 강력한 기능을 통해 엄격한 풀스택 타입 바인딩을 강제함으로써 뛰어난 개발자 경험을 제공합니다. API 계약 이탈 없음, 코드 생성 없음.

2021년 8월 마지막 메이저 버전 출시 이후, tRPC 커뮤니티는 상당한 성장을 이루었습니다:

오늘, 우리는 tRPC v10을 출시합니다. v10이 이미 많은 대규모 TypeScript 프로젝트에서 프로덕션 환경에서 사용되고 있다는 점을 알리게 되어 기쁩니다. 이번 공식 출시는 더 넓은 커뮤니티에 일반 사용 가능성을 알립니다.

신규 프로젝트는 예제 애플리케이션으로 tRPC v10을 학습하고 시작할 수 있습니다. 기존 tRPC v9 사용 프로젝트는 v10 마이그레이션 가이드를 참조하세요.

변경 사항 개요

v10은 tRPC 역사상 가장 큰 출시입니다. 처음으로 tRPC 구조에 근본적인 변경을 가했으며, 이러한 변경으로 인해 첨단 애플리케이션을 개발하는 신속한 팀들에게 새로운 가능성이 열릴 것이라고 믿습니다.

개선된 개발자 경험

tRPC v10은 여러분의 IDE를 적극적으로 수용합니다. 타입 통합뿐만 아니라 이번 버전에서 프론트엔드, 백엔드, 편집 경험을 통합했습니다.

v10에서는 다음이 가능합니다:

  • 프론트엔드 소비자에서 백엔드 프로시저로 바로 이동하는 "Go to Definition" 사용

  • 입력 인수나 프로시저 이름을 전체 애플리케이션에서 변경하는 "Rename Symbol" 사용

  • tRPC 타입을 애플리케이션에서 수동으로 사용할 때 타입 추론 용이화

강력한 백엔드 프레임워크

v10에서는 백엔드 프로시저 정의 구문을 재검토하여 원하는 로직을 건전한 방식으로 도입할 수 있는 기회를 확장했습니다. 이번 tRPC 버전의 특징:

대폭 개선된 TypeScript 성능

TypeScript는 개발자에게 놀라운 작업을 가능하게 하지만 대가가 따릅니다. 타입을 엄격하게 유지하기 위해 사용하는 많은 기법은 TypeScript 컴파일러에 부하를 줍니다. 커뮤니티 피드백에 따르면 tRPC v9를 사용하는 대규모 애플리케이션에서 이 컴파일러 부하로 인해 개발자 IDE 성능 저하가 시작되고 있었습니다.

우리의 목표는 모든 규모의 애플리케이션에서 개발자 경험을 향상시키는 것입니다. v10에서는 TypeScript 성능을 획기적으로 개선하여(특히 TS 증분 컴파일 시) 에디터가 계속 반응성을 유지하도록 했습니다.

점진적 마이그레이션

마이그레이션 경험을 최대한 간편하게 만들기 위해 많은 노력을 기울였으며, v9 라우터와 (거의) 완전한 하위 호환성을 제공하는 interop() 메서드를 포함하고 있습니다. 자세한 내용은 마이그레이션 가이드를 참조하세요.

코어 팀의 Sachin은 마이그레이션 작업의 상당 부분을 자동화해주는 코드모드도 개발했습니다.

성장하는 생태계

tRPC를 중심으로 다양한 서브 라이브러리 생태계가 지속적으로 성장하고 있습니다. 대표적인 예시는 다음과 같습니다:

더 많은 플러그인, 예제, 어댑터는 Awesome tRPC 컬렉션에서 확인하세요.

감사합니다!

코어 팀과 저는 여러분께 알려드리고 싶습니다: 이제 시작일 뿐입니다. 이미 React Server Components와 Next.js 13에 대한 실험을 진행 중입니다.

특별히 Sachin, Julius, James, Ahmed, Chris, Theo, Anthony, 그리고 이번 릴리스에 기여한 모든 분들께 큰 감사를 드립니다.

tRPC를 사용하고 지원해 주셔서 감사합니다.