# 이펙티브 타입스크립트

58개의 포스트
post-thumbnail

1장 타입스크립트 알아보기 - 2

아이템 3 코드 생성과 타입이 관계없음을 이해하기, 아이템 4 구조적 타이핑에 익숙해지기

2일 전
·
0개의 댓글
·
post-thumbnail

1장 타입스크립트 알아보기 - 1

아이템 1 타입스크립트와 자바스크립트의 관계 이해하기, 아이템 2 타입스크립트 설정 이해하기

4일 전
·
0개의 댓글
·
post-thumbnail

이펙티브 타입스크립트 | 4장 타입 설계

본 문은 이펙티브 타입스크립트를 읽고 알게된 내용을 정리한 글입니다.아이템 30 문서에 타입 정보를 쓰지 않기

2023년 1월 26일
·
0개의 댓글
·
post-thumbnail

[이펙티브 자바스크립트] 1장 타입스크립트 알아보기 (Item1~3)

책을 읽은 후: 음~ 이제 다 이해됐어! 한번 코드에 적용해볼까? 책을 덮은 후: 내가 방금 뭘 배웠더라

2023년 1월 8일
·
0개의 댓글
·
post-thumbnail

[이펙티브 타입스크립트 - 아이템6] 편집기를 사용하여 타입 시스템 탐색하기

타입스크립트의 가장 중요한 역할은 타입 시스템에 있습니다. 타입스크립트는 단독으로 실행할 수 있는 타입스크립트 서버(tsserver)를 사용하며, 언어서비스를 제공합니다.num 변수의 타입을 number라고 직접 지정하지는 않았지만, 타입스크립트는 10이라는 값을 보고

2023년 1월 2일
·
0개의 댓글
·
post-thumbnail

[이펙티브 타입스크립트 - 아이템5] any 타입 지양하기

타입스크립트는 코드 타입을 조금씩 추가할 수 있기 때문에 점진적이다.그리고 언제든지 타입 체커를 해제할 수 있기 때문에 선택적이다.이 기능들의 핵심은 any 타입이다.타입 체커를 통해서 앞의 코드에서 오류를 찾아냈습니다. 그래서 위 코드와 같이 as any를 사용하게

2022년 12월 29일
·
0개의 댓글
·
post-thumbnail

[이펙티브 타입스크립트 - 아이템4] 구조적 타이핑에 익숙해지기

자바스크립트는 본질적으로 덕 타이핑(duck typing) 기반입니다.덕 타이핑(duck typing)이란?객체가 어떤 타입에 부합하는 변수와 메서드를 가질 경우 객체를 해당 타입에 속하는 것으로 간주하는 방식입니다.덕 테스트(The Duck Test)에서 유래된 말로

2022년 12월 26일
·
0개의 댓글
·
post-thumbnail

[이펙티브 타입스크립트 - 아이템3] 코드 생성과 타입이 관계없음을 이해하기

타입스크립트 컴파일러는 두 가지 역할을 수행합니다.최신 타입스크립트/자바스크립트를 브라우저에서 동작할 수 있도록 구버전의 자바스크립트로 트랜스파일(transpile) 합니다.코드의 타입 오류를 체크합니다.하지만 이 두 가지 역할은 서로 완벽하게 독립적으로 사용됩니다.간

2022년 12월 26일
·
0개의 댓글
·
post-thumbnail

[이펙티브 타입스크립트 - 아이템2] 타입스크립트 설정 이해하기

타입스크립트 컴파일러는 매우 많은 설정을 가지고 있습니다. 현 시점에서 타입스크립트 설정은 거의 100개 이상 이릅니다.먼저 설정 사용방법에 대해서 알아보겠습니다.가급적 설정 파일(tsconfig.json)을 사용하는 것이 좋습니다. 그래야만 타입 스크립트를 어떻게 사

2022년 12월 25일
·
0개의 댓글
·
post-thumbnail

[이펙티브 타입스크립트 - 아이템1] 타입스크립트와 자바스크립트의 관계 이해하기

위 그림과 같이 모든 자바스크립트는 타입스크립트에 속해있다.다만, 반대는 성립하지 않는다.다시 말해서, 타입스크립트는 자바스크립트의 상위 집합이다.아래 코드의 경우 node 01.ts 로 실행 시에는, :string 구문은 자바스크립트 구문이 아니기 때문에, 오류가 발

2022년 12월 25일
·
0개의 댓글
·
post-thumbnail

[책 선정] 이펙티브 타입스크립트 및 목표

타입스크립트의 타입 시스템에 대한 자세한 이해안전하고 명료한 코드를 작성할 수 있는 타입 설계최소한의 타입 구문으로 완전한 안전성을 얻을 수 있는 타입 추론any 타입의 전략적 사용의존성과 타입 선언 파일이 동작하는 원리자바스크립트를 타입스크립트로 마이그레이션하는 방법

2022년 12월 25일
·
0개의 댓글
·

[Effective TypeScript] 타입 선언과 @types (1)

dependencies 현재 프로젝트를 실행하는 데 필수적인 라이브러리들이 포함된다. 프로젝트의 런타입에 사용되는 라이브러리들은 dependencies에 포함된다. 프로젝트를 npm에 공개하여 다른 사용자가 해당 프로젝트를 설치한다면 dependencies에 들어있는

2022년 12월 19일
·
0개의 댓글
·

[Effective TypeScript] - any 다루기(2)

타입스크립트는 일반적으로 변수를 선언할 때 타입 또한 결정된다. 그 후에 정제될 수 있지만 확장은 할 수 없다. 그러나 any 타입과 관련해서는 예외인 경우가 존재한다.(any는 진짜 예외가 너무 많다…) out의 타입이 처음에는 any의 배열이었는데 return 할

2022년 12월 19일
·
0개의 댓글
·

[Effective TypeScript] any 다루기(1)

타입스크립트의 타입 시스템은 선택적(optinal)이고 점진적(gradual)이기 때문에 정적이면서도 동적인 특정을 동시에 가진다. 따라서 타입스크립트는 프로그램의 일부분에만 타입 시스템을 적용할 수 있다. 이러한 특성으로 인해 점진적인 마이그레이션이 가능하다. any

2022년 12월 11일
·
0개의 댓글
·
post-thumbnail

[Effective TypeScript] 타입 설계(2)

외부에서 비롯된 데이터에 대한 타입을 작성할 때는 예시데이터가 아니라 명세를 참고해 타입을 작성하여야 한다. 명세를 참고해 타입을 생성하면 타입스크립트는 사용자가 실수를 줄일 수 있게 도와준다. 위 예시는 데이터가 아닌 API와 명세를 보고 타입을 만들어야 하는 이유를

2022년 12월 11일
·
0개의 댓글
·
post-thumbnail

[Effective TypeScript] - 타입 설계(1)

유효한 상태와 무효한 상태를 둘 다 표현하는 타입은 혼란을 초래하기 쉽고 오류를 유발하게 된다.유효한 상태만 표현하는 타입을 지향해야 한다. 코드가 길어지거나 표현하기 어렵지만 결국은 시간이 절약하고 고통을 줄일 수 있다.사용할 때는 너그럽게, 생성할 때는 엄격하게TC

2022년 12월 4일
·
0개의 댓글
·

[Effective TypeScript] 타입 추론(4)

자바스크립트에서는 비동기 동작을 구현하기 위해 콜백, 프로미스, async/await 세 가지 방법을 사용할 수 있다. 이 중 가장 역사가 오래된 방법은 콜백이지만 콜백이 중첩된 코드는 직관적으로 이해하기 어려우며 요청을 병렬로 실행하거나 오류 상황을 빠져나오기 어렵다

2022년 11월 29일
·
0개의 댓글
·

[Effective TypeScript] 타입추론(3)

타입스크립트의 타입은 일반적으로 변경되지 않는다. 그러므로 객체를 생성할 때에 속성을 하나씩 추가하기보다는 여러 속성을 포함해서 한꺼번에 생성해야 타입 추론에 유리하다. 앞에서 봤듯이 타입스크립트에서는 객체의 타입을 체크할 때 해당 속성이 존재하는지 확인을 하기 때문에

2022년 11월 23일
·
0개의 댓글
·

[Effective Typescript] 타입 추론(2) - 타입 넓히기, 타입 좁히기

변수를 초기화할 때 타입을 명시하지 않으면 타입체커는 타입을 결정해야 한다. 이 때 타입스크립트는 지정된 단일 값을 가지고 할당 가능한 값들의 집합을 유추하는데 이 과정을 타입 넓히기라고 한다.다음 예제는 3D 벡터에 대한 타입과 그 요소들의 값을 얻는 함수이다. Ve

2022년 11월 20일
·
0개의 댓글
·
post-thumbnail

[이펙티브 타입스크립트] 아이템 01, 02, 03

이펙티브 타입스크립트 아이템 01, 02, 03

2022년 11월 19일
·
0개의 댓글
·