TypeScript 3

[TypeScript] 객체지향 설계원칙 SOLID

S(SRP. 단일책임원칙) 클래스는 하나의 책임만 가져야 한다. O(OCP. 개방폐쇄원칙) 클래스는 확장에 대해서 열려 있어야 하고, 수정에 대해서는 닫혀 있어야 한다. 클래스의 기존 코드를 변경하지 않고도 기능을 확장할 수 있어야 한다. 인터페이스나 상속을 통해 해결할 수 있다. L(LSP. 리스코프 치환 원칙) 서브타입은 기반이 되는 슈퍼타입을 대체할 수 있어야 한다. 자식 클래스는 부모 클래스의 기능을 수정하지 않고도 부모 클래스와 호환되어야 한다. I(ISP. 인터페이스 분리 원칙) 클래스는 자신이 사용하지 않는 인터페이스의 영향을 받지 않아야 한다. 해당 클래스의 무의미한 메소드 구현은 피해야 합니다. D(DIP. 의존성 역전 원칙) 하위 수준 모듈(구현 클래스) 보다 상위 수준 모듈(인터페이스..

TypeScript 2023.12.21

[TypeScript] 타입스크립트 클래스(class) 정리

객체는 클래스를 기반으로 생성되며 instance라고도 불린다. class Person { name: string; age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } sayHello() { console.log(`안녕하세요! 제 이름은 ${this.name}이고, 나이는 ${this.age}살 입니다.`) } } const person = new Person('Spartan', 30); person.sayHello(); (1) 생성자 (constructor) 생성자는 클래스의 인스턴스를 생성하고 초기화하는데 사용되는 메서드. 클래스 내에서 오직 하나만 존재할 수 있다. (2) 접근 제한자 a. ..

TypeScript 2023.12.19

[TypeScript] 개요

컴파일러란? 1. 타입검사 2. 에러메시지 해석할 때 도움 3. 코드변환 (tsc: TypeScript > JavaScript) 4. 최적화 tsc란? tsc = TypeScript 컴파일러 TypeScript는 JavaScript로 변환되어야 코드를 실행할 수 있다. 정적언어 (=컴파일 언어)는 기계어로 변환이 되어야 한다. 동적언어 (=인터프리터 언어)는 엔진이 코드를 한 줄씩 실행하면서 동적으로 해석합니다. 그래서 동적언어는 오류가 나면 런타임에러가 나는 것이고 정적 언어는 실행 전 사전에 기계어로 변환을 하는 과정에서 오류를 잡아낼 수 있는 것이다. tsc 명령어 tsc --init // tsconfig.json이 생성되는 명령어 tsc index.ts // index.ts를 컴파일 tsc src..

TypeScript 2023.12.19