ערכתי לאחרונה בתאריך 05.11.12 בשעה 00:05 בברכה, יוחאי
שברגע שיש לך אתר שטוען את רוב התוכן שלו דרך Javascript (עם AJAX) למשל, אז אתה לא תכתוב את כל הHTML של דרך JS עם שימוש בcreateElement/createTextNode/appendChild/jQuery זה לא ריאלי באמת, הקוד נראה זוועה, מה שנותן לך מנוע טמפלטים זה דרך לטעון נתונים מהשרת, להחזיר אותם כJSON להעביר אותם לTemplate ושם לעשות כל מיני פעולות על המידע, נניח אם יש לך מערך של נתונים שאתה רוצה להציג כטבלה, אז מנוע טמפלטים טוב ייתן לך את האופציה לכתוב לולאות ממש בתוך הHTML, מנוע טמפלטים טוב ייתן לך את היכולת לקחת מספר ולהציג אותו בכמה וריאציות שאת רוצה (בפורמט של פסיקים למשל), לקחת תאריך בפורמט unix timestamp ולהציג אותו בצורה יפה.תחשוב גם על ההפרדה היפה שזה עושה, אם אתה רוצה לשנות איזה אלמנט/להוסיף איזה משהו חדש לHTML זה לא ריאלי לנהל את זה רק דרך הJS אז אתה פשוט פותח את הTemplate ומבצע בו את השינויים וזה הכל, הפרדה מוחלטת מהקוד שמתעסק עם ייבוא הנתונים והפעולות שהוא מבצע עליהם.
נ.ב
Backbone זה פשוט עולם אחר לפיתוח בClient-Side היא נותנת לך בעיקר סדר בקוד (הפרדה של Model/View/Controller), והמון פיצ'רים שיוצרים עוד יותר סדר בקוד, כמו למשל היכולת ליצור Collection Object שאתה מגדיר לו url והוא מחצין לך פונקציות כמו fetch ויודע להסתנכרן מול הView שלו כל פעם שיש מידע חדש + אתה יכול גם להעביר לו פרמטרים של offset/perpage, וזה באמת על קצה המזלג.
השילוב בין Backbone לTemplate Engine הוא לא הכרחי, אבל הוא מוסיף פשוט המון אם כבר הולכים על MVC אז עדיף להשתמש במנוע טמפלטים (אני מניח שכתבת PHP בעבר אז אתה בטח מכיר את Smarty).
השילוב של jQuery מגיע כבר ביחד עם החבילה של Backbone, אם אתה מפתח בRails אני יכול להמליץ לך על אחלה gem's שתהיה בשוק כמה הם מקלים עליך את העבודה