본문 바로가기

Project

PHP 단상

PHP: 잘못된 디자인의 프랙탈 


PHP를 정말로 증오하는 분이 쓴 글을 국내의 블로거가 번역한글인데 , 최근에 읽은 블로그 중 가장 재미있어서 나도 PHP의 단상을 몇가지 적어본다.

 먼저 나또한 위의 글을 전적으로 동의한다. PHP개발을 하며 나타나는 알수없는 버그들등에 고생을 한 경험이 있어서 PHP가 얼마나 거지같은지 깊이 공감을 한다.
 하지만 왜 언어 랭킹을 보면 항상 저자가 좋아하는 Python보다 높은 순위에 있으며 , 그 인기가 10년가까이 지속되고 있는지 생각해볼필요는 있을것같다.

1. PHP는 왜 그렇게 많이 쓰이는가?

- 먼저 PHP는 환경설정이 정말 간단하다.
윈도우라면 XAMP , 맥이라면 MAMP , 리눅스라면 LAMP 로 검색해서 나오는 패키지를 인스톨하면 끝이다.
다른 환경설정 필요없이 그냥 설치하고 htdocs에 php를 넣어두기만 하면 끝이다.
물론 실제 서비스때는 apache,php설정등을 바꿔줘야하지만 다른 언어에서 그것에 비하면 정말 생각할것이 없다.

- 빠른 개발속도
당신이 프레임워크를 이용하든, 그냥 통짜 php로 개발을 하든 무엇을 이용하든 익숙한 개발방법이 있다면 하나의 화면을 구현하는데 정말 별로 시간이 걸리지 않는다. 내 경험상 자바로 개발할때보다 4배이상은 빠르게 개발할수 있다고 말할수 있다.

- 낮은 학습곡선
PHP는 정말 누구나(개나소나) 쉽게 배울수 있다.
귀찮은 부분은 다빼버린 언어 설계때문에 (그로인해 심각한 결함들도 있지만) 그냥 생각한대로
쓰면 왠만하면 결과가 나온다.
또 PHP프레임워크는 배우기가 정말 쉽기 때문에 다른언어의 프레임워크보다 쉽게 이용할수가 있다.
(어려우면 안쓴다)

- 풍부한 라이브러리
게시판,블로그,홈쇼핑등의 많은 레퍼런스및 오픈소스가 있으며 필요한 함수나 소스코드는 검색만 하면 나올정도로
도처에 널려있다.(C&P가 많아서 문제,중복되는 기능의 함수가 많아서 문제이긴 하지만)

2. 그리고 현실적인 이유들

- 개발자를 구하기 쉽다.
학습곡선이 낮은만큼 PHP개발자는 도처에 널려있다.
컴퓨터 전공이 아닌 많은사람들이 웹페이지를 만드려고 처음 개발을 시작해서 접하는것이 html 다음이 php이기에
정말 많은 사람들이 php를 알고있다.(커뮤니티의 수준이 낮다고 하는것도 비슷한것이 원인)

- 대부분의 웹사이트들은 규모가 작다
대부분의 웹사이트들은 우리가 생각하는만큼 많은 유저를 대상으로 만들지 않아도 된다.
게다가 개발에 들어가는 돈과 시간도 일주일,100만원수준의 사이트가 대부분.
홈쇼핑에 무회원 계좌이체, 수동결제확인이면 회원관리에 그렇게 보안을 신경쓰지 않아도 되는 경우도 많다.

- 유지보수비용이 상대적으로 적다.
위의 경우와 낮은 학습곡선을 생각한다면 , 대부분의 작은 사이트에서 php소스코드를  수정하는일은 그리 전문적은 지식을 갖지않은 사람도 조금만 공부한다면 할수 있다. (신기능 개발은 무리일지 몰라도)


- 대부분의 PHP개발자는 PHP만 하지 않는다.
PHP만 알아서 먹고살수 있느냐 한다면 대부분의 경우 아니라고 말할수 있다.(JAVA라면 가능)
보통 php개발자는 mysql도 알아야하고 Javascript도 알아야하고, html도알아야하고 css도알아야하고 상황에따라 디자인도해야하는 경우도 많이 있다.이런상황에서 다른언어를 써보라고? 아마 납기 못맞추고 야근하기 쉽상일듯.


3. 결론

내 생각은 앞으로도 PHP의 인기는 계속될것이다. IT업계에서 누구나 항상 좋은 조건의 좋은환경에서 개발할수 있는 것이 아니기 때문에 , 위의 막장처럼 보이는 환경에서 많은사람이 일할것이고 그들은 PHP를 선택해 개발할경우가 많을것으로 보이기 때문이다. (적어도 python보다는)
 
물론 주력언어로 PHP를 쓴다고 한다면 도시락 싸들고 말릴것이다.
PHP를 깊게 파려고하는 당신 왜 이 단순한 언어를 더 공부하려고 하나요?