본문 바로가기
Web Development

템플릿 엔진( Template Engine ) , 렌더링 방식

by doriver 2022. 11. 14.

템플릿 엔진( Template Engine )

템플릿 양식과 특정 데이터 모델에 따른 입력 자료를 합성하여 결과 문서를 출력하는 소프트웨어(소프트웨어 컴포넌트)

웹 템플릿 엔진은 지정된 템플릿 양식과 데이터가 합쳐져서 HTML 문서를 출력하는 소프트웨어를 말한다. 

 

서버 사이드 템플릿 엔진( Server Side Template Engine )

서버에서 데이터를 미리 정의된 Template에 넣어 HTML문서를 만들어 클라이언트에 전달해주는 역할을 한다. 
예) JSP, Thymeleaf, Velocity, Freemarker 등

 

클라이언트 사이드 템플릿 엔진( Client Side Template Engine )

URL이 바뀌어도 HTML을 다시 내려받지 않고 클라이언트에서 알아서 그리기 때문에 주로 단일 화면에서 화면이 변경되는 경우에 사용된다.
예) Mustache, Squirrelly 등

 

 

서버 사이드 렌더링

서버에서 완전한 HTML을 만들어서 내려준다. 대표적으로 jsp, thymeleaf, velocity, freemarker가 있다.

장점 단순하고, 학습 곡선이 낮다. 백엔드 개발자도 쉽게 개발할 수 있다. 
단순하고 정적인 화면이라면 서버 사이드 렌더링 기술로 개발을 금방 끝낼 수 있다.
단점 동적이면서 복잡한 화면을 만들기 어렵다.

 

클라이언트 사이드 렌더링

서버는 API만 제공하고, 자바스크립트 프레임워크가 템플릿과 서버 API 응답 결과를 조합해서 HTML 화면을 동적으로 만든다. 대표적으로 react, vue.js, angularJS 등이 있다.

장점 동적이고, 복잡한 화면을 만들기 좋다.
단점 공부할 분량이 매우 많다. 자바스크립트에 능숙해야 한다. 웹 프론트엔드 개발자라는 전문 분야가 있다.

 

'Web Development' 카테고리의 다른 글

Ajax , Controller , 데이터 통신 , 넘기고 받기  (0) 2023.02.06
넥사크로(Nexacro)  (0) 2022.12.13
프로젝트에서 패키지 이름  (0) 2022.07.29
RESTful API  (0) 2022.07.25
Library, Framework, API  (1) 2022.07.10