逻辑的部分本来就不会写在 template 里面
顶多只有 output, 循环 跟 if else
个人写 web 时都会这样规定自己
这也是 MVC 的一个重要观念
不要说 MVC
光重新套版时看到一堆程式码就会崩溃了
所以那个智财权完全可以忽略
再来就是输出的部分
固定的版面部分直接写在 template 里面就好
不需要多此一举另外写 js 捞资料
例如 navigator, banner
这些用 template 只要 include 进来
修改输出变量就好
维护上也方便许多
虽然用 js 也办得到
但直接输出就可以的东西
何必输出后再靠 js 运算?
简单来讲
都已经建立连线要求资料了
何必叫他等等再来要一次?
如果是动态加载,搜寻结果等等跟使用者 "互动" 有关的
再使用 ajax 处理
目的是减少使用者在页面间跳动
或是看到页面整个翻新的次数
普通浏览器上限就是六条连线同时存在
每开一次页面光读资料就把线占满
只会降低呈现速度而已
然后我记得快取只有存下载完的页面
用 ajax 呈现后的结果是不会存起来的
所以流量方面也是个问题
虽然 html 档案很大
但开启 gzip 后差异就变小了
使用 js 跟 template 两者间要取得一个平衡
而不是走某个极端
不过网页技术进步真的很快
也许哪一天真的会被完全取代也不一定
但目前来说
大部分的情况还是会两者并行才有最佳的效果与效率
然后大部分人都不直接使用 jsp 了
可以搜寻 template engine 找一个看起来顺眼的来用
像我之前是用 freemarker
Thymeleaf 也不错
简单明了 功能不用太多
只是输出用而已