클라이언트 said,
웹 개발을 의뢰하기 위해 기획을 하다보면 파트너마다 사용하는 언어가 다른 경우가 많더라고요. PHP, ASP, JSP 이렇게 세 가지가 가장 보편적으로 사용되는 서버 사이드 언어같은데 그 셋의 차이는 무엇인가요? 파트너 입장에서 가장 효율적으로 쓰는 언어는 어떤 것인지, 언어마다 어떤 특성이 있는지 궁금해요!
안녕하세요, 위시켓입니다.
지난 포스팅 – Q. 웹 개발의 클라이언트와 서버, 알고 계시나요? – 에서 웹 개발의 기초인 클라이언트와 서버의 개념에 대해 알아보았는데요.
오늘은 그 중에서도 서버 측 언어(Server-side language)로 많이 쓰이는 PHP와 ASP, JSP를 알아보도록 하겠습니다.
Server-side script language, 즉 서버 스크립트 언어는 응용 소프트웨어를 제어하는 스크립트 언어와 서버/클라이언트 중 서버 족에서 실행되는 서버 사이드 언어의 합성어입니다.
이와는 반대로 클라이언트 쪽에서 실행되는 스크립트 언어가 있는데요. 바로 Client-side script language입니다.
두 언어의 역할을 간단하게 표현하면, 서버 쪽 언어가 집을 짓는 것이라고 봤을 때 클라이언트 쪽 언어는 인테리어를 하는 격입니다. 그럼 이제 “서버 사이드 스크립트 언어, Server-side script language”에 대해 자세히 봐볼게요.
-
PHP (HYPERTEXT PROCESSOR)
PHP라고 불리는 이 언어는 쉽게 설치할 수 있고 배우기도 쉬워서 다른 언어들에 비해 개발 기간도 적게 걸리고 웹 사이트를 구축하는 경우 속도가 빠릅니다.
뿐만 아니라 리눅스와 같은 유닉스 계열의 OS나 윈도우 기반에서도 사용 가능하며, Oracle이나 Sybase등 여러 가지 데이터베이스를 지원하고 있습니다.
-
ASP (ACTIVE SERVER PAGES)
ASP는 마이크로소프트 사에서 동적인 웹 페이지를 생성하기 위해 개발한 스크립트 언어입니다. 동적인 서버 페이지로 보통 VB 스크립트와 같이 사용됩니다.
일반 사용자들에게 익숙한 OS를 사용하기 때문에 배우기 역시 쉽지만 리눅스 같은 OS를 사용하는 서버에서는 사용할 수 없습니다. 최근에는 객체 지향 패러다임이 들어간 ASP.NET이 그 자리를 대체하는 추세입니다.
-
JSP (JAVA SERVER PAGES)
JSP는 이름에서 보면 알 수 있듯이 Sun Microsystems사의 JAVA를 기반으로 웹 환경에 맞게 개발된 언어입니다. 이 언어의 장점은 보안성이 우수하고 기능이 많다는 점입니다. 또한 대부분의 플랫폼에서 운영 가능합니다. 하지만 객체 지향을 기반으로 하기 때문에 사용자들이 익히기에 진입 장벽이 높습니다.
언어들의 차이점을 알아야 하는 이유는 상황이나 목적이 달라질 때마다 필요한 언어가 달라지기 때문입니다.
언어에 따라 개발 기간, 개발 비용, 유지 보수 비용, 개발자 인건비, 속도 등에 근본적으로 영향을 끼치기 때문이죠.
요소별 순위를 알아본다면?
1. 예상 개발 기간: JSP > PHP > ASP
2. 예상 개발 비용: JSP > ASP > PHP
3. 개발자 인건비: JSP > ASP > PHP
4. 속도 : PHP > ASP > JSP
상대적으로 큰 규모의 프로젝트일 경우 JSP로 주로 개발이 이루어지겠군요!
오늘은 서버