php 역시 객체지향언어인 OOP입니다. 클래스형 객체지향을 지원하고 있습니다. 사실 ... 전에는 php가 객체지향언어인지도 몰랐었습니다;; 그 이유는...

사이트를 구축할 때 php를 서버 개발에 사용하기는하나 서버 스크립트는 대부분 데이터베이스를 연결하는 부분에만 주로 사용했을뿐 그 외적인 부분은 자바스크립트를 사용했었기 때문에 php에 대하여 많은 부분을 공부하겠단 생각은 하지 않았었죠.

하지만 php사용도 점차 많아지면서 앞으로 객체지향을 사용해야하나?라는 고민과 공부를 해야하는지도 찾아보면서 알게된 사실에 대하여 공유해볼까 합니다.


# php가 객체지향언어로 넓리 쓰이지 않는 이유
물론 객체지향을 사용해 열심히 프로그래밍하시는 분도 많을 것입니다. 그만큼 php가 많이 사용되니까요. 하지만 php의 객체지향적 개발을 꺼리는 분들도 계셨는데 그 이유는 다음과 같았습니다.

퍼포먼스가 낮다.

많은 분들이 퍼포먼스에 대한 언급을 해주셨는데 단순하게 php의 객체지향이 가지는 프로그래밍적인 이유는 사실 크지는 않으며 객체지향을 위해 지원되는 기능들이 다른 언어들(자바나, C++) 에 비하여 매우 부족하다는 이유라고 할 수 있습니다. 그렇기 때문에 퍼포먼스까지 고려한 php 언어 개발이 어렵다는 것이 문제라고 할 수 있습니다.

그외에 이유는 함수형 언어 또는 대용량 분산 처리에 효과적인 다른 언어가 많이 존재하기 때문입니다. php가 좋지 않다라고 판단하기 보다 상대적으로 효과적인 다른 언어들 때문에 배우기 쉽고 적용하기 쉬운 php를 객체지향으로 활용하는 것이 비효율적이라 판단하는 것이죠.