오늘은 instance method와 static method에 대하여 공부하였습니다.
하나. method란 Class 안에 포함되어 있는 function을 의미합니다.
둘. instance method란 특정 object에만 적용되는 함수입니다.
셋. static method는 Class 전체에 적용되는 함수입니다.
아래 동영상을 보시고, 정리 노트를 읽어 보셔도 좋을 것 같습니다.

//instance method//
let x = 5; // 변수 x에 5가 저장됨
let xspeed = 2; // 변수 xspeed에 2가 저장됨
x = x + xspeed; // 변수 x에 (5+2)가 저장됨
// 변수 x에는 7이, 변수 xspeed에는 2가 저장되어 있음
// 변수 x의 값이 변화됨
let pos = createVector(); // pos 벡터가 생성됨
let vel = createVector(); // vel 벡터가 생성됨
pos.add(vel); // vel 벡터를 pos 벡터에 더함
// pos 벡터의 값이 변화됨
// add()는 pos 벡터 안에서 작동됨 -> instance method
//static method//
let x = 5; // 변수 x에 5가 저장됨
let xspeed = 2; // 변수 xspeed에 2가 저장됨
let newX = x + xspeed; // 변수 newX에 (5+2)가 저장됨
// 변수 x에는 5가, 변수 xspeed에는 2가, 변수 newX에는 7이 저장되어 있음
// 변수 x의 값은 변화가 없음
let pos = createVector(); // pos 벡터가 생성됨
let vel = createVector(); // vel 벡터가 생성됨
let newPos = p5.Vector.add(pos, vel);
// newPos 벡터가 생성되어 pos 벡터와 vel 벡터를 더한 값이 저장됨
// pos 벡터의 값은 변화가 없음
// add()는 벡터 Class 전체에 작동됨 -> static method
코드로 정리해 보면 위와 같습니다. 오늘 특정 object 안에서만 작동되는 함수인 instance method 와 Class 전체에 작동되는 함수인 static method에 대해서 공부해 보니, 나중에 다루게 된다는 global method도 궁금해 집니다. 영향력 범위의 차이에 따른 범주라고 생각해 보니, “수신제가치국평천하”가 떠오릅니다. 먼저 제 스스로를 많이 아끼고 다듬고 싶습니다. 천리 길도 한 걸음부터.
댓글 남기기