Index

10. 객체지향 프로그래밍이란 무엇일까?

객체지향은 프로그래밍 방법론중에 하나로, 프로그램을 작성할 때 객체들을 만들어 서로 소통하도록하는 방법이라고 할 수 있습니다.

그렇다면 여기서 말하는 객체란 무엇일까요?

우리가 앞서서 배운 자바스크립트 객체가 키,값 쌍으로 이루어진 데이터의 묶음이라면, 객체 지향의 객체는 우리가 표현하고자 하는 구체적인 사물을 추상적으로 표현한것 이라고 볼 수 있습니다.

이 그림은 무엇을 표현한 것일까요?

이 그림은 무엇을 표현한 것일까요?

즉 추상화란 필요한 최소한의 정보로 대상을 표현하는것을 의미합니다.

만약 저를 추상적인 객체로 표현한다면

즉 저를 객체로 표현한다면

const me = {
    name : '한재현',
    address : '제주도 제주시 인다 1길',
    phoneNum : '010-8000-0000',
    canWalk : function(){
        console.log('재현이가 걷는다.');
    }
}

이렇게 표현할 수 있습니다.

그리고 또한 객체는 행동과 상태를 가집니다. 여기서 행동은 메소드, 상태는 프로퍼티 정도로 이해하시면 됩니다.

자자 그럼 저에게 새로운 능력을 부여해봅니다.

const me = {
    name : '한재현',
    address : '제주도 제주시 인다 1길',
    phoneNum : '010-8000-0000',
    canWalk : function(){
        console.log('재현이가 걷는다.');
    },
    teaching : function(student){
        student.levelUp();
    }
}

그리고 새로운 객체를 만들어봅니다.