flask(jinja2), django, vue.js, ...

최근에 살펴본 것들인데, 이들은 모두 template engine을 가지고 있다 (vue는 그 자체로 보는게 맞나?)


그러다가 문득, tempalte engine은 왜 쓰지?라는 생각이 들었다. 그래서 한참을 찾아보았고 그 내용을 정리해두려 한다


<template engine이란?>

template engine(for web)은 dynamic page를 생성할 때 주로 쓰인다 (아마)

template engine이 없다면, 우리는 web application 코드에 html 코드를 포함시켜야 한다

또는 php같은 언어에서, html 코드에 data logic을 섞어쓰기도 했던 것도 template engine의 부재때문이라고 볼수있다

template engine은 view code(html)와 data logic code(db connection)를 분리해주는 기능을 한다

그리고 필자가 궁금했던 것은, "그래서, 그렇게하면 뭐가좋은데?"였다


<template engine의 장점 / 사용이유>

view code와 data logic code를 분리하면 아래와 같은 효과들을 얻을 수 있다

1. designer와 developer의 workspace를 분리시킴으로써 효과적으로 협업(cooperation)할수있다

2. 유지보수(코드 변경)를 할때도 훨씬 효과적이다 (= MVC pattern의 장점 / 사용이유)


2만 보더라도, 혼자 개발을 할때 template engine의 사용이유는 충분할듯하다.

물론 유지보수는 프로젝트가 커질수록 힘들어지므로, 프로젝트가 충분히 클 때 template engine이 필요할것이다



WRITTEN BY
hojongs
블로그 옮겼습니다 https://hojongs.github.io/