CODEDRAGON ㆍDevelopment/JavaScript, jQuery, ...
객체 지향 프로그래밍
· 모든 데이터를 객체 단위로 취급하며, 이 객체 단위를 조합하여 프로그래밍하는 것을 의미합니다
· 객체 지향 프로그래밍은 상속받은 하위 클래스 혹은 객체가 부모 클래스 혹은 부모 객체의 속성과 메서드를 사용할 수 있습니다.
· 외부 사용자에게 내부에서 어떤 동작이 이루어지는 감추는 캡슐화, 상속 등의 객체의 특징을 가지고 있습니다.
객체 지향 언어 분류
객체 지향 언어는 클래스 기반의 언어와 프로토타입 기반의 언어로 분류가 됩니다.
구분 |
설명 |
클래스 기반의 언어 |
· 전통적인 클래스 기반의 언어는 클래스로 객체의 기본적인 형태와 기능을 정의하고 생성자로 인스턴스를 만들어서 사용합니다. · 모든 인스턴스는 클래스에 정의된 대로 같은 구조이며, 보통 런타임에 변경할 수 없습니다. · 자바와 C++등이 이 유형에 속합니다. |
프로토타입 기반의 언어 |
· 객체의 자료구조, 메서드를 동적으로 변경하는 것이 가능합니다. · 자바스크립트가 이 유형에 속합니다. |
클래스 기반의 언어 vs 프로토타입 기반의 언어
구분 |
장점 |
클래스 기반의 언어 |
정확성, 안정성, 예측 가능성 등의 관점에서 보면 클래스 기반의 언어가 프로토타입 기반의 언어보다 우수한 결과를 보장합니다. |
프로토타입 기반의 언어 |
프토로타입은 동적으로 자유롭게 객체의 구조와 동작 방식을 바꿀 수 있다는 장점이 있습니다. |
'Development > JavaScript, jQuery, ...' 카테고리의 다른 글
DOM 트리 탐색(DOM tree traversing) (0) | 2017.11.17 |
---|---|
노드(node) 종류, 노드 간 관계의 종류 (0) | 2017.11.17 |
배열 타입, 배열 여부 확인 메소드-Array.isArray() 메소드, instanceof 연산자, constructor 프로퍼티 (0) | 2017.11.16 |
자바스크립트 함수 (0) | 2017.11.16 |
eval(String) (0) | 2017.11.16 |