티스토리 뷰
1. 타입스크립트와 객체지향
타입스크립트는 자바스크립트에 타입이 더해진 언어로, 자바스크립트의 superset이다. 타입스크립트는 자바스크립트로 컴파일된다.
객체지향이란, 객체 위주로 설계하고 프로그래밍하는 패러다임이다. 객체지향에서의 객체는 현실에 있는 것을 추상화한 것이라고 볼 수 있다. (추상이란? 사물이 지니고 있는 여러 측면 중 특정한 부분만 보는 것을 말한다. 지구본이나 지도는 실제의 지구를 추상화한 결과물이다.) 객체지향에서 각각의 객체는 서로 의사소통할 수 있다.
1-1. 절차지향과의 차이점
🧶 절차지향
데이터와 함수 위주로 구성되어있다. 그러나 그러한 함수와 데이터가 엉켜있어 사이드 이펙트 발생확률이 높아진다. 즉, 유지와 확장이 어렵다.
🎁 객체지향
프로그램을 객체로 정의하여 객체들끼리 소통한다. 따라서 생산성이 높고, 유지보수와 문제해결을 하기 쉽다.
※ 그러나 패러다임에는 우위가 없다는 점을 유의하자. 절차지향보다 객체지향이 무조건 더 좋은 것은 아니다. 만들어야 하는 프로그램에 따라 절차지향이 적합한 경우도 있다. (비교적 간단한 프로그램일 경우 절차지향이 더 적절하고 직관적이다.) 객체지향은 객체간 통신을 하기 때문에 흐름이 직관적이라 더 복잡한 프로그램에 적합하다.
2. 객체지향의 특징
객체지향에는 4가지 원칙이 있다.
2-1. 💊 캡슐화
흩어져있는 데이터, 함수 중 관련있는 것끼리 묶고, 외부에서 볼 필요가 없는 데이터는 숨기는 것
private
,protected
와 같은 키워드를 사용하여 비공개 멤버를 만들 수도 있다.
2-2. 📜 추상화
내부 구조를 몰라도 외부에서 인터페이스를 통해 사용할 수 있는 것.
implements
라는 키워드로 interface임을 나타낼 수 있다.
2-3. 👩👧👧 상속
한 번 정의해둔 class를 재사용 할 수 있다.
extends
라는 클래스를 사용해서 상속할 수 있다.
2-4. 💧 다형성
상속을 통해 만들어진 객체를 구분하지 않고 공통된 API를 호출할 수 있다
'코딩 > 자바스크립트' 카테고리의 다른 글
쓰로틀링(Throttling)과 디바운싱(Debouncing) (1) | 2021.02.25 |
---|
- Total
- Today
- Yesterday
- 키크론 v10
- 팁
- 정규표현식
- 취미
- DevOps
- 마크다운
- autoplay
- 키보드
- 토이프로젝트
- 보안
- AWS
- 타입스크립트
- storybook
- 삽질방시
- 회고록
- 삽질방지
- 네트워크
- 리액트
- 하우징 도색
- 개발일지
- 앨리스배열
- 강의후기
- 웹퍼블리셔
- 프로젝트
- TIL
- 리덕스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |