TypeScript 6

[TS] Typescript Type Alias

💡타입 별칭(Type Alias)의 개념Typescript에서 Type Alias는 타입(기본형, 인터페이스 등)에 별명을 붙여 재사용가능한 문법을 제공한다. 이를 통해 복잡한 타입을 간단한 이름으로 표현할 수 있으며, 코드의 가독성을 높이고 유지보수가 용이해진다.➡️ interface / class 표현과 표환되나 객체 중심의 설계에서는 interface / class 를 활용하고, 타입의 단순화에서는 type alias 를 활용한다.type ID = number | string;type PASSWORD = string;let userId1: ID; // 별칭 사용 재활용 가능.let userId2: number | string; // 하드 코딩userId1 = "test1";userId2 = "te..

Today I Learn 2025.01.04

[TS] Typescript Union & Intersection (2)

💡인터섹션 (Intersection) type의 개념(&) 기호를 사용하여 두 개 이상의 타입을 결합하여 하나의 타입을 정의하는 방식이다. 인터섹션 타입으로 생성된 타입은 모든 구성 타입의 속성과 요구 사항을 동시에 만족해야 한다.➡️ 유니온(Union)과 다른 점 : 유니온은 여러 타입을 허용하는 것, 인터섹션은 결합된 모든 속성과 요구사항을 모두 만족해야함, || 과 && 같은 느낌.interface User3 { id: number; name: string;}interface Admin3 { id: number; role: string;}let member: User3 & Admin3;member = {id: 100, name: "Hong", role: "admin"};// ..

Today I Learn 2025.01.03

[TS] Typescript Union & Intersection (1)

💡유니온 (Union) type의 개념하나 이상의 타입을 가질 수 있는 값을 정의하는 데 사용되며, 유니온 타입은 | (파이프) 기호를 사용하여 여러 타입을 결합 가능하다.let numAndStr: number | string;numAndStr = "abc";numAndStr = 100;// numAndStr = true; // Boolean 타입은 정의되지 않았기 때문에 넣을 수 없다.// 특정 문자열(리터럴)로 구성된 유니온 설계let myAuthority : "admin" | "user" | "vip";myAuthority = "admin"myAuthority = "user"// myAuthority = null; // null 허용 안됨// myAuthority = "member"; // 지정된..

Today I Learn 2025.01.03

[TS] Typescript Interface

💡SW 인터페이스(interface)의 개념SW에서 인터페이스는 프로그램이나 시스템간의 경계면(boundary)으로 구성요소 간의 연결 상태와 어떻게 상호 작용할 것인지에 대한 순서와 규칙 등의 프로토콜을 정의하는 개념으로 API나 UI, CLI 등의 예가 존재한다.➡️일반적인 객체지향 언어 (C++, Java, C#) 등에서는 interface 자체가 type으로 존재한다. 💡Typescript의 interfaceTypescript에서 interface는 객체(Object)의 구조를 정의할 때 사용되는 문법으로 객체의 속성들의 type을 명시적으로 지정하고 강제화 하여 객체 활용에 있어 코드의 가독성과 type의 안정성을 향상시킨다.➡️유사한 문법(class, type alias 등) 도 있지만 가..

Today I Learn 2025.01.02

[TS] Typescript 기본 타입

💡동적 타이핑 vs 정적 타이핑Typescript와 Javascript 간의 가장 큰 차이는 동적 타이핑(Dynamic Typing)이었던 Javascript 언어가 Type이 정해져 있는 정적 타이핑(Static Typing)인  Typescript로 변화되었다는 점이다. 정적 타이핑을 통해 변수의 타입을 미리 선언하여 강제 할 수 있다. ⭐Dynamic Typing (Javascript)let username;username = "John";username = 200;console.log(username) // 200 ⭐Static Typing ( Typescript)let username : string;username = "John";// username = 200; 'number' 형식은 's..

Today I Learn 2025.01.02

[TS] Typescript

💡Typescript 개념대형 애플리케이션을 개발할 수 있게 설계된 언어로, 자바스크립트의 슈퍼셋(확장)이기 때문에 자바스크립트 엔진에서만 동작한다.Javascript는 script언어로 대형 프로젝트에는 부적합하여 가독성, 생산성, 안정성 및 품질 문제가 다수 발생하는 문제가 있음. 이에 따라 엄격한 문법이 필요한 프로젝트에서 TS가 적용되어 안정적인 개발 및 유지보수가 가능하게 됨.💡Typescript의 언어적 특징Typescript는 type에 관련된 문법에 대해 정적 타이핑 언어에서 파생된 문법을 포함하고 있으며, 문법적 특성으로는 JS보다 강력한 Type 선언 및 Check에 관련된 기능을 지원하며, 이외에도 특수한 연산자와 확장된 Type의 개념을 제동하여 고품질의 코드 설계를 지원한다.?..

Today I Learn 2025.01.02