Categories: IT

php에서 클래스(class), 인스턴스(instance), 메소드(method), 함수(funtion) 개념 쉽게 이해하기

생활코딩에서 php언어를 공부하고 있는 중입니다. 공부하면서 이해하고 있는 것들을 적어볼건데요.
<?php
$file = new SplFileObject(‘data.txt‘);
var_dump($file->isfile());
var_dump($file->isdir());
var_dump($file->fread($file->getsize()));
$file->fwrite(rand(1,100));
 
$file2 = new SplFileObject(‘data.txt’);
var_dump($file2->isfile());
var_dump($file2->isdir());
var_dump($file2->fread($file2->getsize()));
$file2->fwrite(rand(1,100));
?>
위와같은 코드가 있다라고 했을 때 클래스, 인스턴스, 매소드, 스테이트가 어떤건지 아래에 적었습니다.

  • SplFileObject : 클래스(Class)
  • $file, $file2 : 인스턴스(Instance)
  • isfile, isdir, fread : 메소드 혹은 함수(Method,funtion)
  • data.txt, data2.txt : 상태(state.스테이트)

위의 두가지 인스턴스들은 각각 다른 상태를 가지고 있기 때문에 메소드를 호출했을 때 매소드가 다르게 동작한다라고 읽을 수 있는데요. 저만의 방법으로 좀 더 쉽게 이해해본 내용은요.
공장을 예로 들어봅니다. 메소드들의 기능은 같죠. 자르는 메소드, 붙이는 메소드가 있다고 했을 때 그것들은 하나의 단순한 기계라고 볼 수 있겠습니다. 자르는 기능, 붙이는 기능이 있는 기계말입니다. 그리고 클래스는 설계도입니다. 그리고 인스턴스는 만들어진 제품이죠.
첫번째 코드를 읽어보면요. data.txt라는 원자재를 splfileobject라는 설계도로 가공하면 file이라는 제품이 나온다는겁니다. 그것이 결론이고요. 그럼 그 file이라는 제품이 나오기까지 어떤 과정을 거치냐하면 isfile 가공도하고 isdir가공도하고 fread가공도 하는것입니다.
file2라는 제품을 만드는것도 비슷합니다. file과 file2가 색깔이 다른 제품이라고 했을 때 둘이 만드는 방식은 같습니다. 다만 data.txt가 빨간색이라면 file가 빨간색이 될 것이고, data2.txt가 파란색이면 결과물인 file2도 파란색이 될 것입니다. 이것이 제가 공부하면서 이해해본 클래스, 인스턴스, 메소드들입니다. 독학이기 때문에 맞는지 알수는 없지만 비슷한 개념일 것 같고 혹시 제가 이상하게 이해하고 있다면 제보 부탁드립니다.

DDable

Recent Posts

가민 포러너265 중고 구입

가끔 러닝하는 사람이지만 갑자기 가민시계가 갖고 싶어졌음. 그저 내 수면과 심장박동을 측정하고 싶은 마음이랄까? 새거는…

6일 ago

미즈노 웨이브골드8 와이드 탁구화 샀음

탁구 초보자들은 알거임 탁구화를 사자니 은근 돈이 아깝고, 그냥 운동화도 괜찮지 않나? 라는 생각을 하게…

1주 ago

나이키 acg 드라이핏 트레일 캡 모자 구입

나이키 acg 트레일캡 모자는 검정색이 잘 안나오는데 재고가 있다고해서 급하게 사봄ㅋ 겉 재질은 바람막이의 그…

3주 ago

맥포스 알바트로스 EDC 가방 구입

올리브로 구입했다. 맥포스 알바트로스는 EDC가 있고 아닌게 있는데 EDC는 42리터로 기내반입이 가능하고 ECD가 아닌 모델은…

3주 ago

삼성화재 다이렉트 자동차보험 가입 후 추가로 티맵(tmap) 할인 특약 가입

자동차보험은 지난 10월달에 가입했었는데, 당시에는 티맵할인 적용을 받지 못했다. 최근 6개월간 500km를 운행해서 점수가 나와야…

3주 ago

251111 주짓수 2개월차 느낀 점

일단 재밌기도 하고 재미없기도 함 재밌는건 주짓수 영상보는게 재밌음ㅋ 재미없는건 운동하러 가는게 재미없음. 재미없다기보다는 힘든…

3주 ago