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

종합소득세 셀프신고 근로소득,사업소득,임대소득 있을때

처음에는 모두채움 신고로 하면 되는 줄 알았고, 다 끝나고 임대소득을 분리과세로 하면 되는줄 알았음 하지만…

5일 ago

260426 주짓수 도복은 중고로 사는게 좋을 것 같음

오늘도 중고 도복을 2개 샀다. 19만원에 두벌인데, 둘다 잘 맞는다. 브랜드는 그립스, 하이퍼플라이 중고가 좋은…

2주 ago

260412 주짓수 후기 7개월차 변화

25년 9월에 시작해서 10월 한달은 갈비뼈 부상으로 쉬었고 7개월차에 접어들었음 실력은 잘 모르겠음 하지만 몸은…

1개월 ago

kis정보통신 결제내역 짜증난다

가계부 정리하는데 카드내역에 kis정보통신이라고만 나오는거임 이게 뭔지 생각이 안나서 더 짜증나는 상황. 조회하는 방법이 있었다…

3개월 ago

르아르 경량패딩 구매해봄

세일을 한다길래 구입해봤는데 생각보다 훨씬 괜찮았음. 무신사에 후기는 많기는 했지만 이벤트 당첨됐다면서 올린 후기라 믿을…

3개월 ago

260112 당구큐 비싼걸로 구입해버렸다 FE올죠몬버터

현재 가지고 있는 큐는 무사시 애니그마로 그것도 나쁘진 않다. 하지만 어느샌가 무사시ps10을 갖고 싶어졌고, 물건이…

4개월 ago