언어 33

타입스크립트의 타입 (2)

타입 별칭1번 정리글에서는 타입스크립트의 타입 지정을 type annotation으로만 소개했다. 이번에는 타입 별칭을 만들어서 타입 정의를 하는 방법을 소개한다. 지난번 객체 타입을 기준으로 다음과 같이 타입을 지정할 수 있다.// 타입 별칭type User = { id: number; name: string;}let user: User = { id: 1, name: "patrick",};인덱스 시그니처객체 타입을 정의할 때 사용하는 유용한 방식 중 하나이다. 예를 들어 다음과 같은 객체가 있다고 가정하자.let countryCodes = { Korea: "ko", UnitedState: "us", UnitedKingdom: "uk"} countryCodes의 key는 국가명이고, valu..

언어/TypeScript 2024.08.09

타입스크립트의 타입 (1)

원시타입(Primitive Type)하나의 값만 저장하는 타입number : 숫자 타입string : 문자열 타입boolean : 논리 타입null : null 타입undefined : undefined 타입리터럴 타입값 하나가 곧 타입인 타입 리터럴은 값이라는 뜻으로 타입스크립트에서는 한 가지 값이 그 값의 타입으로 사용될 수 있다.예시)let numA: 10 = 10;let strA: "hello" = "hello";let boolA: true = true;타입 표기 방식타입스크립트에서 타입을 표기하는 가장 기본적인 방법으로 type annotation 방식이 있다.위에 리터럴 타입의 예시처럼 변수 옆에 표기하는 방식으로 type annotation 방식이라고 부른다.배열 타입배열 타입을 표기하는 방..

언어/TypeScript 2024.08.08

프로그래밍 언어의 타입 시스템

모든 프로그래밍 언어는 타입 시스템을 가지고 있다타입 시스템이란? 언어에서 사용할 수 있는 여러 가지 값들을 어떤 기준으로 묶어 규정할 것인가?코드의 타입을 언제 검사할지?어떻게 검사할지?위와 같이 프로그래밍 언어를 사용할 때 타입과 관련해서 지켜야할 규칙들을 모아둔 체계타입 시스템의 종류정적 타입 시스템 : 코드 실행 이전 모든 변수의 타입을 고정적으로 결정함(엄격하고 고정적인 시스템)C, Java동적 타입 시스템 : 코드를 실행하고 나서 그때 그때 마다 유동적으로 변수의 타입을 결정함(자유롭고 유연한 시스템)Python, JavaScript정적 타입 시스템의 경우 엄격한 검사로 실행 전에 오류를 찾아낼 수 있지만 전체적인 타이핑의 양이 너무 커진다.반면, 동적 타입 시스템은 자유롬고 타이핑이 적지만 ..

언어/TypeScript 2024.08.06