웹 프레임워크

웹 프레임워크(web framework, WF) 또는 웹 애플리케이션 프레임워크(web application framework, WAF)는 동적인 웹 페이지나, 웹 애플리케이션, 웹 서비스 개발 보조용으로 만들어지는 애플리케이션 프레임워크의 일종이다. 웹 페이지를 개발하는 과정에서 겪는 어려움을 줄이는 것이 주 목적으로 통상 데이터베이스 연동, 템플릿 형태의 표준, 세션 관리, 코드 재사용 등의 기능을 포함하고 있다.

역사

월드 와이드 웹은 설계 시 태생적으로 동적이지 않았으며 웹 서버에 게시된, 손으로 코딩한 HTML로 이루어진 초기의 하이퍼텍스트로 이루어졌다. 게시된 문서를 수정하려면 페이지를 만든 사람이 직접 수행해야 했다. 1993년, 공통 게이트웨이 인터페이스(CGI) 표준이 외부 애플리케이션과 웹 서버 간 통신을 위해 도입되었고, 사용자의 입력을 반영한 동적 웹 페이지를 제공할 수 있게 되었다.[1]

1995년, 완전히 연동되는 서버/언어 개발 환경들이 처음 등장했으며 콜드퓨전, PHP, 액티브 서버 페이지(ASP) 등 새로운 웹 특화 언어들이 모습을 드러냈다.

프레임워크 아키텍처의 종류

모델-뷰-컨트롤러 (MVC)

수많은 프레임워크들은 MVC 아키텍처 패턴을 따라 사용자 인터페이스로부터 비즈니스 규칙데이터 모델을 분리해 낸다.

3층 구조

3층 구조에서 애플리케이션은 3개의 물리적인 층으로 구성된다: 클라이언트, 애플리케이션, 데이터베이스.[2][3][4][5] 데이터베이스는 일반적으로 RDBMS이다. 애플리케이션은 비즈니스 로직을 포함하고 있으며, 서버를 구동시킨 다음 HTTP를 사용하여 클라이언트와 통신한다.[6] 웹 애플리케이션의 클라이언트는 응용 계층에 의해 생성되는 HTML을 실행하는 웹 브라우저이다.[7][8]

같이 보기

각주

  1. “CGI: Common Gateway Interface”. 2009년 4월 9일에 원본 문서에서 보존된 문서. 
  2. Microsoft. “Three-tiered distribution”. 2011년 9월 19일에 확인함. 
  3. Oracle. “clustering_concepts_10en” (PDF). 2011년 9월 19일에 확인함. 
  4. Robert R. Perkoski. “Introduction to Web Development”. 2013년 11월 7일에 원본 문서에서 보존된 문서. 
  5. IBM. “Using Client Access Express in a three tier environment”. 2011년 9월 19일에 확인함. [깨진 링크(과거 내용 찾기)]
  6. Oracle. “Understanding the Three-Tier Architecture”. 2011년 9월 19일에 확인함. 
  7. Microsoft. “Pragmatic Architecture: Layering”. 2011년 8월 10일에 원본 문서에서 보존된 문서. 2011년 9월 19일에 확인함. 
  8. Arokia. “3-Tier Web Architecture”. 2012년 7월 18일에 원본 문서에서 보존된 문서. 2011년 9월 19일에 확인함.