6. 객체지향 프로그래밍 (1)
객체지향 언어로서 클래스 기반의 언어와 프로토타입 기반의 언어를 간단하게나마 구분하는 것이 필요. 클래스 기반의 언어 클래스로 객체의 기본적인 형태와 기능을 정의하고, 생성자로 인스턴스를 만들어서 사용할 수 있다 클래스에 정의된 메서드로 여러 가지 기능을 수행할 수 있다. Java, C++ 등 모든 인스턴스가 클래스에 정의된 대로 같은 구조이고 보통 런타임에 바꿀 수 없다. 프로토타입 기반의 언어 객체의 자료구조, 메서드 등을 동적으로 바꿀 수 있다. —> 정적 타입의 언어와 동적 타입의 언어의 차이와 거의 비슷하게 보임. 정확성, 안정성, 예측성 등의 관점에서 클래스 기반 언어가 프로토타입 기반의 언어보다 좀 더 나은 결과를 보장한다. 프로토타입 기반의 언어는 동적으로 자유롭게 객체의 구조와 동작 방식..