추천하는 Javascript 템플릿 엔진은 무엇입니까? [닫은]


78

성능면에서 어떤 것이 더 낫다고 생각하는 자바 스크립트 템플릿 엔진에 대한 귀하의 의견을 알고 싶습니다.

사람들이 벤치마킹하는 링크를 찾았습니다.

http://jsperf.com/jquery-template-table-performance/15

http://jsperf.com/jquery-template-table-performance/8

http://www.viget.com/extend/benchmarking-javascript-templating-libraries/



github.com/foo123/Contemplate , 경량화, 빠르고 유연한 isomosprhic 템플릿 엔진 (jsperf 시험 예 및 시험 포함) (PS : 나 작가 야)
니 코스 M.

답변:


109

템플릿 엔진 선택자! -프로젝트에 적합한 템플릿 엔진을 선택하는 데 도움이되는 도구입니다.


6
너무 멋져요 (풍자). 첫 번째 질문 3 개에 답하기 : 클라이언트 또는 서버 : 클라이언트 얼마나 많은 논리 : 기본 사항 가장 빠른 것 중 하나 여야합니까? 예 결과가 없습니다.
Salvador Dali

2
@SalvadorDali- "가장 빠른"모든 것이 JS로 직접 컴파일되므로, "기본"이 아무것도 제한하지 않기 때문에 충돌이 발생한다는 다른 요구 사항이 있습니다.
Mark Kahn

1
선택을 도와주는 도구 인 @SalvadorDali는 이러한 작업을 원하는대로 수행 할 수 없습니다.

다만, 지적하지이 사이트는 더 이상 지원됩니다 github.com/garann/template-chooser
크리스

내가 가장 좋아하는 것은 Slim ( slim-lang.com )입니다. 루비 팬에게 특히 좋습니다.
Alex Nazarsky

24

성능면에서 템플릿 엔진 자체가 아니라 템플릿을 미리 컴파일 할 수있는 가능성이 있다면 더 많은 것을 발견했습니다. 어쨌든 프로덕션 모드를 위해 모든 JavaScript 소스 파일을 하나의 파일로 연결하고 축소하는 것이 좋습니다. 따라서 기본적으로 템플릿을 사전 컴파일하는 단계도 동일합니다.

클라이언트 측 템플릿을 위해 jQuery 템플릿과 Mustache를 사용했지만, 제가 가장 좋아하는 것은 여전히 EJS 로, 특히 프로덕션 모드에서 지금까지 시도한 다른 것보다 훨씬 빠르게 수행했습니다 (가능할 때마다 네이티브 문자열 연결로 컴파일하고 하나의 DOM 만 필요함) 실제로 렌더링 된 뷰를 삽입하기위한 액세스). JavaScriptMVC 프레임 워크의 일부이며 StealJS 와 함께 종속성 관리자로 사용할 때 이미 프로덕션으로 컴파일되는 모든 템플릿을 수행합니다 ( View Engine 은 Micro, Mustache 및 jQuery 템플릿도 지원함).


저는 현재 backbone.js로 빌드 중이며 이미 밑줄 템플릿이 있으며 다른 템플릿 엔진으로 이동해야할지 모르겠습니다. 그러나이 모든 벤치마킹 콧수염에서 내가 볼 수있는 것이 승자 인 것 같습니다.
kaha

콧수염이 상당히 느리다는 것을 알았습니다. 템플릿 엔진에 실제 성능 문제가 있습니까?
Daff

사실, 내가 가질 유일한 질문은 어떻게 템플릿을 미리 컴파일 할 수 있는가?
kaha

사용하기로 결정한 템플릿 언어에 따라 다릅니다. 기본적으로 빌드 프로세스 중에 최소화하기 전에 컴파일러 스크립트를 실행해야합니다. 예 : jQuery 템플릿 github.com/wookiehangover/jquery-tmpl-jst
Daff

3
EJS는 틀림없이 최고입니다. 그것은 단순히 당신의 방식에서 벗어나 자바 스크립트를 코딩하고, 매우 깨끗한 방식으로 원격으로로드하고, 서버 측 인코딩과 함께 작동하기 위해 '<'를이 '['로 대체합시다. 나에게 다른 모든 것은 예쁜 구문 추상화 쓰레기로 귀찮게 만들려고 노력하는 얼간이와 같습니다.
Jason Sebring

11

수 있음 PURE - 그것으로 HTML로 JSON 변환 할 수 없는 별도의 템플릿에서, 당신의 존재 HTML로 만든 템플릿 특수 구문.

PURE 사이트에서 :

JSON 데이터에서 HTML을 생성하는 간단하고 초고속 템플릿 도구

표현 (HTML)과 로직 (JS)은 완전히 분리되어 있습니다.

독립형 또는 dojo, DomAssistant, Ext JS, jQuery, Mootools, Prototype, Sizzle 및 Sly와 함께 작동합니다.

이해하는 가장 좋은 방법은 이 라이브러리가 실제로 무엇을하는지 보는 것입니다 . (공식 데모에서) 순수 템플릿 엔진 데모

모든 데모가 여기에 있습니다.


1
문서는 그다지 정확하지 않으며 Github 저장소에는 버그를보고 할 문제 추적기가 없습니다.
smonff


4

가장 매력적이라고 ​​생각되는 API 및 구문이있는 템플릿 언어를 선택하세요. 성능 문제가 발생하면 대안을 살펴볼 수 있습니다.

수천 개의 행이있는 테이블을 구성하지 않는 한 차이를 느끼지 못할 것입니다.

개인적으로 저는 Google의 폐쇄 템플릿을 사용 합니다. 주로 Java 구현이 있기 때문에 선택했습니다. 나는 벤치 마크를 한 적이 없다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.