본문 바로가기

공부하자/IT

[웹언어] PHP 소개 및 장단점

728x90
반응형


PHP 소개 및 장단점




PHP 하면 떠오르는 것은 빠른 생산성, 저렴한 유지비용입니다.

 

먼저 빠른 생산성에 대해 생각해보겠습니다. PHP 는 프로그래밍 속도를 높여주기에 매우 좋습니다. 예를 들어 Request("LANG") 이라는 것을 간단히 $LANG 이라고 표현하구요. Response.Write OUTPUT <?=$OUTPUT?> 이렇게 간단히 표현됩니다. 사소한 부분 같지만 실제 프로그래밍 속도가 상당히 차이가 나게 되죠. 함수들도 꽤 직관적인 것들이 많은 것 같습니다. 편하게 프로그래밍할 수 있는 것이죠. 그뿐 아니라 객체를 지향하는 기능도 많이 추가되어 복잡한 프로그래밍도 가능합니다.

 

그럼 유지비용에 대해 생각해보겠습니다. 물론 JSP도 리눅스에 설치할 수 있기에 저렴하게 사용이 가능합니다. 하지만 ASP 나 닷넷의 경우 윈도우계열의 운영체제를 설치하여야 하고 비용이 만만찬습니다. 게다가 이들은 데이터베이스 또한 가격이 매우 높습니다.

반면에 PHP는 무료라이선스가 가능한 리눅스에 또 데이터베이스로 Mysql이 설치되는 경우가 많음으로 유지비용이 비교가 안되죠. 그 점은 웹 호스팅 가격을 봐도 쉽게 알 수 있습니다. 웹 호스팅 (서버의 자원을 일부 할당받아 사이트를 개설할 수 있게 해줌) 비용이 ASP 쪽이 훨씬 높죠.

  

PHP 단점

사실 PHP의 단점이라고 해야 할는지 모르겠지만 제가 생각하는 단점은 많은 프로그래머들이 쉽게 접근할 수 있다는 점입니다. 공급이 많으니 당연히 연봉이 상대적으로 내려갈 수 있겠죠. 물론 수요가 많습니다. 하지만 아이러니하게 이러한 수요는 대개 영세한 업체이거나 중소규모의 사이트들입니다. 따라서 견적이 내려갈 수 밖에 없겠죠.

그리고 제가 생각하는 한가지 단점은 바로 데이터베이스에 있습니다. 보통 Mysql 을 사용하는 것이 일반적인데요. Mysql  다른 데이터베이스보다 기능을 구현하기가 그리 편하지가 않더군요. 물론 모두 구현이 가능합니다. 다만 편의성을 말하는 것입니다. 조금 어폐가 있을 수 있는데 왜냐하면 MSSQL, 오라클등을 PHP에 적용할 수도 있기 때문인데요. 하지만 오라클은 주로 대용량 데이터베이스로 주로 사용되어지고 따라서 작은 기업들은 잘 사용하지 않게 되죠.(PHP는 주로 중소기업에서 사용합니다.)  MSSQL도 상대적으로 그렇구요또 왠지 리눅스 계열인 PHP 마이크로소프트사의 MSSQL은 뭔가 안 맞는 것 같다는 느낌이 들어서요. 물론 개인적인 느낌이긴 합니다

 

PHP의 쓰임새

글쎄요. 저 같은 경우는 빠른 속도, 생산성, 적은 유지비용의 이유로 보통 사이트를 만들면 가장 먼저 떠오르는 것이 PHP입니다. 작업자 입장에서 무척 편하죠. 그리고 사실 PHP 또한 많은 좋은 유용한 기능이 포함되어 있습니다. 아주 복잡한 사이트이거나 많은 사람이 방문하고 유지가 편해야 하는 등 이유가 붙게 되면 다른 언어로 눈을 돌립니다.

 - PHP ASP와는 달리 특정 플랫폼에서만 동작하지 않는다. PHP C 언어를 기반으로 만들어진 서버에서 실행되는 스크립트언어기존의 C 언어에 익숙한 개발자들이 보다 쉽게 접근할 수 있다는 장점을 가지고 있다. 그러나 컴포넌트를 사용할 수 없을 뿐만 아니라, 보안에 취약한 점을 가지고 있어서 PHP 기반으로 만들어진 웹 사이트들이 해킹의 목표가 되고 있다는 단점이 있다

 

PHP (hypertext preprocessor)

 : 1994 rasmus lerdorf라는 사람에 의해 처음으로 고안이 되었으며 자신의 개인홈페이지를 만들기 위해 사용됐습니다. 그리고 현재 세계에서 가장 많이 사용하는 웹 서버인 아파치 웹 서버에 모듈형태로 장착되어 쓰이고 있으며 유닉스뿐만 아니라 윈도우에서도 사용이 가능하고 또는 ASP와 마찬가지로 서버 측 스크립트입니다

ASP ODBC JSP JDBC와 같이 보조적인 메커니즘이 필요하지 않고 바로 함수를 통한 처리방식을 채택하고 있습니다. 즉 데이터베이스에 대한 공통 인터페이스를 가지고 있지 않고 모든 DB에 대해 자체 라이브러리를 지원합니다. 현재 PHP4버전까지 나왔으며 기본 확장자는 .php, .phtml, php4를 사용하면 됩니다

php의 최대 장점은 사이트에서 다운받아 무료로 사용할 수 있고 대부분의 운영체제를 지원하며 데이터베이스(oracle, sybase, msql, mysql, solid, odbc, postgresql, adabase D, filepro, velocis, infomix, dbase, unix dbm)를 다양하게 지원합니다. 그리고 함수가 많아 작업이 편리할 겁니다. 안에 명령을 삽입하면 됩니다.

 

★ PHP의 특징

PHP언어는 웹 상에서 서버를 연동해서 실행하는 대표적인 언어다.

인터프리터 방식을 채택하고 있는 편리한 언어이다.

 

1. 웹서버에서 해석되는 스크립트 언어이다.

   = 웹서버에서 처리가 이루어지는 대표적인 스크립트 언어이다.

 

2. 데이터베이스 연동을 편리하게 구현할수 있다.

= MySQL,mSQL,Oracle,Sybase 및 윈도우 ODBC 등 여러 DB를 편리하게 연동할 수 있다는 것이다.

 

3. 모든 운영 체제에서 구현 가능하다.

   = 유닉스 계열 및 윈도우 환경 모두에서 구현할 수 있다.

 

4. 코드 작성이 쉽고 문법이 간단하다.

 PHP 문법은 C/C++ 언어의 문법과 비슷하여 클래스를 지원하여 효율적인 코딩이 가능하다. 그리고 스크립트 언어이기 때문에 HTML 문서 내부에 입력하여 실행 할 수 있는 편리한 언어이다.

 

5. 처리 속도가 빠르다.

= 인터프리터 방식을 채택하고 있는 일반적인 asp perl 언어보다 처리속도가 월등히 빠르다

1.     거의 모든 OS에서 실행되며, 수십 가지의 DBMS 연결을 지원한다.

2.     속도가 매우 빠르다. 리눅스 + 아파치 + PHP + MySQL은 환상적인 속도를 제공한다.

3.     클래스 생성 및 상속이 가능하므로 코드를 모듈화시키기가 용이하다.

4.     파일 업로드, 메일 전송 등의 기능은 자체적으로 지원한다(ASP JSP 처럼 컴포넌트나 클래스 파일을 따로 설치하지 않아도 된다). ☜ 매우 마음에 드는 기능임.

5.     문법이 C 언어를 따르므로 간결하고 ASP JSP에 비해 코드의 양을 많이 줄일 수 있다.

6.     DB 연결에 함수를 사용하므로 직관적이고 간결하다.

7.     이미지를 동적으로 생성할 수 있다 ☜ PHP 만의 특징이며, 유용하게 사용될 수 있다.

8.     XML, ZIP, PDF, 암호화 등에 관련된 다양한 함수를 지원한다. ☜ 특별한 컴포넌트를 설치하지 않고도 매우 다양한 처리가 가능하다.

9.     JSP 처럼 한글 처리를 걱정하지 않아도 된다.

반응형