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는 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 처럼 한글 처리를 걱정하지 않아도 된다.
'공부하자 > IT' 카테고리의 다른 글
[최신기술] 웹(Web) 2.0 (0) | 2012.12.28 |
---|---|
[웹언어] ASP/JSP/PHP 특징 및 장단점 (3) | 2012.12.28 |
[웹언어] 닷넷(.net) 소개 및 장단점 (3) | 2012.12.28 |
[웹언어] JSP 소개 및 장단점 (2) | 2012.12.28 |
[웹언어] ASP 소개 및 장단점 (1) | 2012.12.28 |
[DB] DBMS 관리 시스템 & 파일 접근 (0) | 2012.12.28 |
[DB] 데이터 종속성과 정규화 (7) | 2012.12.28 |
[DB] DBMS시스템의 구성 (0) | 2012.12.28 |
[DB] DBMS의 구성 (0) | 2012.12.28 |
[암호학] 개인정보보호법 개정 (0) | 2012.12.28 |