클래스 : 객체(instance)를 만들기 위한 틀
Class 키워드를 쓰면 됨
접근 제한자를 사용해 접근 제한
- public : 클래스 외부에서도 접근 가능
- private : 클래스 내부에서만 접근 가능
- protected
상속 : 기존 클래스의 속ㅅㅇ과 메서드를 물려받아 새로운 클래스 정의
추상클래스
- 인스턴스화 할 수 없다.
- abstract 키워드를 사용하여 정의
인터페이스
- 객체가 가져야 하는 속성과 메서드 정의
- 규약과 같아서 어길 수 없다.
- 코드의 안정성과 유지보수성 ⬆️
객체지향설계원칙-S.O.L.I.D
S (SRP, 단일책임원칙)
: 클래스는 하나의 책임만 가져야 한다.
O (OCP, 개방폐쇄원칙)
: 클래스는 확장에 대해서는 열려있어야 하고, 수정코드에 대해서는 닫혀있어야 한다.
기존코드를 변경하지 않고도 기능을 확장할 수 있어야 한다.
인터페이스나 상속을 통해 해결
L (LSP, 리스코프 치환 법칙)
: 서브타입은 기반이 되는 슈퍼타입을 대체할 수 있어야 한다. 자식클래스는 부모 클래스의 기능을 수정하지 않고도 부모 클래스와 호환되어야 한다.
I (ISP, 인터페이스 분리 원칙): 해당 클래스에게 무의미한 메서드의 구현을 막자
D (DIP, 의존성 역전 원칙): 하위 수준 모듈(구현 클래스) 보다 상위수준 모듈(인터페이스)에 의존을 해야 한다.
'TypeScript' 카테고리의 다른 글
타입스크립트로 todolist 만들기 (0) | 2023.08.01 |
---|---|
실습 : 도서관 프로그램 (0) | 2023.07.30 |
실습 : 별다방 프로젝트 (0) | 2023.07.30 |
타입,유틸리티 타입 (0) | 2023.07.29 |
실습: JS라이브러리를 TS 프로젝트에서 사용하기 <성적표 프로그램> (0) | 2023.07.27 |