Template System 이란?

Back-End/Spring 2019. 7. 7. 10:18
728x90
반응형

 - 템플릿 엔진이란? -


템플릿 프로세서 (Template Processor)를 사용하여 웹 템블릿 (Web Template)를 결합하여 완성된 웹 페이지를 만들어내는 시스템이다.


자료 (Data) 를 결합하여 페이지를 만들어 내기도 하고 많은 양의 Content를 표현하는 것을 도와준다.


예를 들어 기존의 방식에서는 서버에서 데이터베이스의 데이터를 가져온 뒤 HTML로 만들어 클라이언트에게 보내주었습니다.


이 방식은 페이지의 일부만 변할 때에도 전체 페이지를 다시 그려야 하는 비효율적인 방식이었습니다.


이 때문에 많은 사람들이 Ajax가 나왔을 때 열광했습니다.


Ajax로 요청을 보내면 서버는 요청한 데이터만 주고 프론트엔드단에서 해당 부분만 재가공하여 보여주면 되었습니다.


전의 방식에 비해 서버의 부담을 줄이는 혁신적인 방법이었지만 문제가 끝난것은 아니었습니다.


보통 jquery를 사용하거나 javascript를 사용하여 HTML에 가공된 데이터를 보여주는데 조금의 실수라도 하면


페이지가 보이지 않거나 이상하게 보이는 경우도 있었습니다.


이 때문에 쉬운 표현으로 서버에서 받아온 데이터를 효과적으로 보여줄 중간 매개체를 원하게 되는데


이 역할을 한 것이 바로 템플릿 엔진입니다.


템플릿 엔진을 사용하면 비교적 간단한 표현 (조건문, 변수, 반복문) 을 통해 효과적으로 데이터를 가공하여 웹 페이지를


보여줄 수 있습니다.





  -템플릿 엔진을 사용하는 이유-


  1. 많은 코드를 줄일 수 있다.

(대부분의 Template Engine는 기존의 HTML에 비해서 간단한 문법을 사용합니다)


  2. 재사용성이 높다

(똑같은 디자인의 페이지에 보이는 데이터만 바뀔때 Template Engine 문법으로 만들어 놓고 데이터를 바꿔가면서 렌더링 해주면 된다.)


  3. 유지보수에 용이하다.

(Template Engine을 사용하면 동일한 Template를 사용한다는 전제하에 Template과 넘겨주는 데이터만 수정하면 끝입니다.)




728x90
반응형
저작자표시

'Back-End > Spring' 카테고리의 다른 글

Spring boot 프로젝트 (데이터베이스 연동, Template 적용)  (0) 2019.07.07
타임리프 (Thymeleaf) 란?  (0) 2019.07.07
Spring boot 프로젝트 (생성, 실행)  (0) 2019.07.06
Spring boot와 Spring legacy의 차이점  (0) 2019.07.05
도로명 주소 (daum api) 사용  (0) 2019.07.05
: