본문 바로가기

타입스크립트

(11)
[번역] 타입스크립트를 활용한 타입 프로그래밍 입문 타입스크립트를 이용하면 타입 자체를 프로그래밍 하는 것이 가능합니다. 이런 식으로 데이터와 로직이 아닌, 프로그램에 대한 정보를 프로그래밍하는 것을 메타 프로그래밍이라 합니다. 타입스크립트를 활용해 좀 더 풍부한 타입을 만드는 방법의 기초를 다져봅니다. 원문은 아래에서 확인하실 수 있습니다. https://www.zhenghao.io/posts/type-programming Zhenghao's site The official site of Zhenghao He, a software engineer and a TypeScript/JavaScript enthusiast. www.zhenghao.io 타입스크립트는 JS에서 벗어나서, 타입만을 가지고도 프로그래밍할 수 있는 타입 프로그래밍 언어입니다. 타입 언..
XState : 액터 모델 간단히 알아보기 공식 문서 Actors | XState Docs Actors 4.6+ 🚀 Quick Reference The Actor model (opens new window) is a mathematical model of message-based computation that simplifies how multiple "entities" (or "actors") communicate with each other. Actors communicate by sending messages (events) to e xstate.js.org 프로그래머로서 어떤 기술을 처음 배울 때에는 명세보다는 역할, 즉 용례 위주로 접근하는 것이 좋다. Actor 모델은 Akka(Scala), Elrang에서 동시성 문제를 해결하기 위해..
타입스크립트 : 탬플릿 리터럴 타입으로 타입 안전하게 코딩하기 https://toss.tech/article/template-literal-types Template Literal Types로 타입 안전하게 코딩하기 TypeScript 코드베이스의 타입 안전성을 한 단계 올려줄 수 있는 Template Literal Type의 뜻과 응용에 대해 알아봅니다. toss.tech 탬플릿 리터럴 타입은 Parser 개발에 매우 효과적이다. 해당 글 말미에 소개된 예제들의 타입 구현을 따라가본다. 기본적으로 모두 재귀와 타입 추론(infer), 공변과 반공변을 적절히 사용하여, 해당 구현들을 공부해두면 다른 구현들을 이해하는데 큰 도움이 될 것이다. 예제 1 : Express route parameter에서 파라미터 추출하기 (난이도 하) type C = ExtractRou..
TypeScript의 앰비언트 모듈(Ambient Modules) - js 라이브러리에 타입 적용하기. 원문 보기 이 게시물에서는 TypeScript의 앰비언트 모듈을 살펴보겠습니다. 앰비언트 모듈이 무엇인지, 어떻게 사용하는지, 사용 시 몇 가지 주의 사항과 팁을 다룰 것입니다. 앰비언트 모듈이란 무엇입니까? Ambient 모듈은 JavaScript로 작성된 라이브러리를 가져와서 마치 TypeScript로 작성된 것처럼 원활하고 안전하게 사용할 수 있는 TypeScript 기능입니다. 앰비언트 선언 파일은 모듈의 타입을 설명하지만 구현은 포함하지 않는 파일입니다. 앰비언트 선언 파일은 JavaScript로 변환되지 않습니다. 순전히 타입 안전 및 IntelliSense를 위해 사용됩니다. d.ts 파일 포맷을 따릅니다. TypeScript 에코시스템에는 DefinitelyTyped를 통해 사용할 수 있는..
리액트 패턴 : 타입스크립트를 활용해 as Props 사용하기 원문 보기 React polymorphic components with TypeScript Polymorphic components is a powerful React pattern for controlling how your components render in DOM. isamatov.com 폴리모픽 컴포넌트 패턴은 매우 유명한 리액트 패턴 중 하나입니다. 컴포넌트를 as를 사용하여 button을 a, div로 사용할 수 있게 해줍니다. TypeScript와 제네릭을 사용하여 강력한 타입 체킹이 더해진 다형적 컴포넌트를 작성하는 방법을 살펴보겠습니다. Overview of polymorphic components (폴리모픽 컴포넌트 개요) API가 어떻게 사용되는지를 확인합니다. 버튼이 a 태그처럼 ..
타입스크립트의 타입 시스템으로 틱택토(Tic Tac Toe) 구현하기 원문 보기 Type System Game Engines Just for fun, what if we crafted a board game purely within TypeScript's logical type system? blog.joshuakgoldberg.com 영상 버전 TSConf 2020 TSConf 2021 In its 4th year, the TSConf team is excited to organize another stellar conference (Virtually. Thanks, Covid.) that will delight and entertain even the most curmudgeonly developer! tsconf.io 템플릿 문자열 리터럴을 이용해 Tic Tac To..
타입스크립트 함수의 시그니처와 리스코프 치환 원칙 https://itchallenger.tistory.com/382?category=1091150 타입스크립트의 타입 불건전성에 대하여 2 : 공식 예제 코드 살펴보기 https://www.typescriptlang.org/play?strictFunctionTypes=false#example/soundness TS Playground - An online editor for exploring TypeScript and JavaScript The Playground lets you write TypeScript or J.. itchallenger.tistory.com 함수 파라미터는 반공변성, 리턴 타입은 공변성을 갖는다. (예제 코드는 위 글의 2. Function Parameter Bi-variance(..
타입스크립트의 타입 대수(type argebra)를 통해 타입 오류 분석하기 Type algebra는 TypeScript에서 많이 알려지지 않은 주제이며 TypeScript의 몇 가지 단점을 이해하는 데 필수적인 주제입니다. Algebras (대수) 집합 대수가 |,&에서 모두 분배법칙이 성립하며 타입스크립트의 타입 합집합 교집합은 집합 대수를 따름을 이해하면 됩니다. 우리 모두 수학 수업에서 몇 가지 대수 법칙을 배웠습니다. 곱셈은 덧셈에 대해 왼쪽 분배 법칙 성립: a * (b + c) === (a * b) + (a * c) 곱셈은 덧셈에 대해 오른쪽 분배 법칙 성립: (a + b) * c === (a * c) + (c * c) 덧셈은 곱셍에 대해 분배법칙이 성립하지 않습니다. 그리고 우리가 방금 본 일반 대수학(ordinary algebra)과 약간 다른 부울 대수학(boo..