https://chatgpt.com/canvas/shared/67ef93f664b48191afe71eba71175350
✨ Swift 가상 TypeScript 입문 로드맵 ✨
✅ 1단계: 타입 기본 감 잡기 (Swift 타입 ≈ TS 타입)
배우게:
- number, string, boolean
- any, unknown
- null, undefined
- object 타입
Swift 같이 쓰기:
let age: number = 24;
let name: string = '다정이';
✅ 2단계: 함수에 타입 구조 다기
배우게:
- 함수 매계번수 타입
- 함수 리턴 타입
function add(a: number, b: number): number {
return a + b;
}
✅ 3단계: 인터페이스(Interface) 이타
배우게:
- interface
- type 객체
interface User {
name: string;
age: number;
}
const user: User = {
name: "다정이",
age: 24
}
✅ 4단계: 유니언 타입 (Union Type)
배우게:
- | 연산자 사용
let value: string | number;
value = "다정이";
value = 42;
✅ 5단계: 제네릭 (Generic)
배우게:
- 기본 제네릭 사용\u법
function identity<T>(arg: T): T {
return arg;
}
✅ 6단계: 함수형 업데이트 패턴 익히기
배우게:
- 불만성 (immutability)
- 스프레드 연산자 (...)
- map, filter, reduce 고차함수
const newArr = arr.map(item => item + 1);
✅ 7단계: 타입 줄이기 (Type Narrowing)
배우게:
- typeof 검사
- in 검사
- 사용자 정의 타입 검사기
function printId(id: number | string) {
if (typeof id === "string") {
console.log(id.toUpperCase());
} else {
console.log(id);
}
}
✨ 전체 요약 프로세스
타입 기본 -> 함수 타입 -> 인터페이스/타입 및 타입 변환 -> 유니언 타입 -> 제네릭 -> 함수형 업데이트 -> 타입 줄이기
✨ 마지막 지체
Swift 감성을 잃지 않고, TypeScript에서 더 가편하고 명확한 코드를 진행하자!
https://chatgpt.com/canvas/shared/67ef94699e58819195a2548db6f9c308
Swift 개발자 감성 TypeScript 예제집 ✨
✅ 기본 타입 매칭 예제
// Swift: var age: Int = 24
let age: number = 24;
// Swift: var name: String = "다정이"
let name: string = "다정이";
// Swift: var isActive: Bool = true
let isActive: boolean = true;
✅ 함수 타입 예제
// Swift: func greet(name: String) -> String
function greet(name: string): string {
return `Hello, ${name}`;
}
const message = greet("다정이");
✅ 인터페이스(Interface) / 타입(Type) 정의 예제
// Swift: struct User { var name: String; var age: Int }
interface User {
name: string;
age: number;
}
const user: User = {
name: "다정이",
age: 24
};
✅ 유니온 타입 (Enum 느낌)
// Swift Enum 비슷한 느낌
let status: "success" | "error" | "loading";
status = "success"; // ok
status = "error"; // ok
// 숫자 또는 문자열 허용
let id: number | string;
id = 123;
id = "abc";
✅ 제네릭(Generic) 예제
// Swift: func identity<T>(value: T) -> T
function identity<T>(value: T): T {
return value;
}
const numberValue = identity<number>(100);
const stringValue = identity<string>("hello");
✅ 함수형 업데이트 예제 (map / filter / reduce)
// Swift: array.map { $0 * 2 }
const numbers = [1, 2, 3];
const doubled = numbers.map(num => num * 2);
// Swift: array.filter { $0 > 2 }
const filtered = numbers.filter(num => num > 2);
// Swift: array.reduce(0) { $0 + $1 }
const sum = numbers.reduce((acc, num) => acc + num, 0);
✅ 타입 좁히기(Type Narrowing) 예제
function printLength(input: string | string[]) {
if (typeof input === "string") {
console.log(input.length);
} else {
console.log(input.length);
}
}
printLength("hello");
printLength(["a", "b", "c"]);
✨ Swift 개발자가 보면 바로 이해되는 TypeScript 예제집 완료 ✨
이 예제들로 TypeScript 문법이 Swift 개발자 감성으로 확 와닿을 거야!
필요하면 “조금 더 업그레이드 및 다양한 예제”도 준비해줄게! 😊
'🩵 React > 학습 노트' 카테고리의 다른 글
[React🩵] 리액트의 리렌더링과 불변성 (0) | 2025.03.29 |
---|---|
[React🩵] a 태그와 Link 태그 (0) | 2025.03.20 |
[React🩵] 리액트 메모이제이션 총 정리! (0) | 2025.03.18 |
[React🩵] Context (0) | 2025.03.14 |
[React🩵] useRef (0) | 2025.03.14 |