★ 재상 튜터님의 TS + React Cookbook ★ (1) 함수에서 TS 사용하기 function sum(a: number, b: number): number { return a + b; } function objSum({ a, b }: { a: number; b: number }): string { return `${a + b}`; } 1) sum ( 타입 지정 해주기) : return 의 타입 지정 2) 객체의 타입 지정시 묶어서 지정. (2) 비동기 함수에서 TS 사용하기 type Person = { id: number; age: number; height: number }; async function getPerson(): Promise { const res = await fetch(`htt..
공식 매뉴얼 https://www.typescriptlang.org/docs/ 공식 튜토리얼 https://www.typescriptlang.org/docs/handbook/intro.html 온라인 책 https://radlohead.gitbook.io/typescript-deep-dive/getting-started
S. SRP : ★ 단일 책임 원칙 ★ O. OCP : 개방 폐쇄 원칙 -> 인터페이스 혹은 상속 잘 쓰기 L. LSP : 리스코프 치환 원칙 I. ISP : 인터페이스 분리 원칙 D. DIP : 의존성 역전 원칙 1. SRP : ★ 단일 책임 원칙 ★ - 클래스는 하나의 책임만 갖기 - 기본적이고 제일 중요한 원칙 - 유저 서비스에서 유저 관련 액션만 하고 다른 액션은 금지 2. OCP : 개방 폐쇄 원칙 - 기존 코드를 변경하지 않고도 기능을 확장하기 (수정X) - 인터페이스나 상속을 통해 해결 가능 - 부모 클래스 기존 코드 변경 안하기 3. LSP : 리스코프 치환 원칙 - 서브타입은 기반이 되는 슈퍼타입을 대체 가능 - 논리적으로 엄격하게 관계가 정립 (자식클래스는 부모클래스의 기능 수정 X, ..
* enum : 간단한 상수 값 * object literal : 복잡한 구조 + 다양한 데이터 타입 1. enum - 열겨형 데이터 타입 - 상수의 그룹화에 적합 - 간단한 상수값 --> 각 멤버의 값이 변하면 안된다는 조건이 있음 2. object literal - 키 +값으로 구성된 객체 - [1,3,4],'k',7 의 값으로 바인딩 가능 --> number와 string 타입의 값만 대입 가능 - 복잡한 구조와 다양한 데이터 타입을 사용할 때 (맘대로 변경 가능) 3. 유틸리티 타입 (1) Partial - 일부 속성만 제공하는 객체 생성 가능 interface Person { name: string; age: number; } const updatePerson = (person: Person, ..
1. 타입 제대로 알아야 하는 이유 - 코드의 품질과 유지보수가 수월함 + 실수 줄이기 가능 2. 기본 타입 (1) boolean - 2가지 상태 (켜짐/꺼짐 , 유효/유효x)인경우 자주 사용 - 3가지 상태는 enum이나 string 사용 (2) number - 정수, 실수, 2~16진수 표현 가능 (3) string - 백쿼트 (백틱) ` : 키보드에서 ~와 같은 키 (ES6부터 생긴 템플릿 리터럴) (4) 배열 - 대괄호 [] (5) 튜플 tuple - 서로 다른 타입의 원소를 순서에 맞게 갖을 수 있는 특수형태 배열 - 어떤 타입의 원소를 허용할 것인지 정의만 해주면 됨. const person: [string, number, boolean] = ['Spartan', 25, false]; cons..
1. 프로그램 기본 세팅 [cmd] 1. npm init -y 2. tsc --init --rootDir ./src --outDir ./dist --esModuleInterop --module commonjs --strict true --allowJS true --checkJS true [package.json] 3. scripts 항목 수정 "scripts": { "start": "tsc && node ./dist/index.js", "build": "tsc --build", "clean": "tsc --build --clean" }, 4. src 폴더 생성 2. 프로그램 src > [index.ts] //학생 인터페이스 코드 interface Student { name: string; age: num..