Template Engine이란
: 템플릿 엔진이란 템플릿 양식과 특정 데이터 모델에 따른 입력자료를 합성하여 결과 문서를 출력하는 소프트웨어를 의미한다.
즉, 템플릿 프로세서를 사용하여 웹 템플릿을 결합하여 완성된 웹페이지를 만들어내는 시스템을 말한다.
Web Template Engine
: Web에서 문서 출력을 위한 템플릿 엔진을 말하며, 서버의 Data와 정적 정보(HTML, CSS를 처리하기 위해 설계된 소프트웨어를 말한다.
Template Engine의 종류
- Layout Template Engine
: 중복되는 Include 코드를 사용하지 않고도 지정된 페이지 레이아웃에따라 페이지 타일을 조합하여 완전한 페이지로 만들어주는 엔진.
- 종류 : Tiles, sitemesh
- Text Template Engine
: 템플릿 양식에 적절한 특정 데이터를 넣어 결과 문서를 출력하는 엔진.
- 종류 : Freemarker, Thymeleaf, JSP 등..
- Server Side Template Engine
: 서버에서 DB 혹은 API에서 가져온 데이터를 미리 정의된 template에 넣어 HTML을 그려 클라이언트에 전달해주는 엔진.
고정적으로 사용되는 부분은 HTML을 이용하여 그리고, 동적으로 생성되는 부분만 template에 넣어 전달한다.
- 종류 : Freemarker, Thymeleaf, Groovy, Velocity, jade4j, Mustache, jsp 등.
- Client Side Template Engine :
: HTML형태로 코드를 작성할 수 있으며, 동적으로 DOM을 그리는 엔진. 즉, 데이터를 받아서 객체에 동적으로 그려주는 프로세스이다.
- 종류 : Mustach
Template Engine의 필요성
- 중복코드를 줄일 수 있다.
- 재사용성을 높일 수 있다.
- 유지보수에 용이하다.