프로토타입
자바스크립트는 멀티 패러다임 프로그래밍 언어
- 명령형
- 함수형
- 프로토타입 기반
- 객체지향 프로그래밍
클래스?
클래스와 생성자 함수는 모두 프로토타입 기반의 인스턴스를 생성하지만, 동일하게 동작하진 않음.
클래스는 생성자 함수보다 엄격하고, 생성자 함수에서 제공하지 않는 기능도 제공함.
자바스크립트는 객체 기반의 프로그래밍 언어, 자스를 이루고 있는 거의 모든 것이 객체!
🍥 객체지향 프로그래밍
- 프로그램을 명령어 또는 함수의 목록으로 보는 명령형 프로그래밍의 절차지향적 관점에서 벗어나, 여러 개의 독립적 단위, 즉 객체의 집합으로 프로그램을 표현하려는 프로그래밍 패러다임
- 사물이나 개념을 인식하는 철학적 사고를 프로그래밍에 접목하려는 시도에서 시작,
→ 특징이나 성질을 나타내는 속성을 가지고 있고, 이를 통해 실체를 인식하거나 구별함
- ex. 사람 → 이름, 주소, 성별, 나이, 신장, 체중, 학력, 성격, 직업 등 다양한 속성을 가짐