
用戶端結構
|
3
在 HTML5 之前
在 HTML5 與行動設備問世之前,前端(或 UI)開發者並不關心隱藏在使用者介面之
後的結構,那是駭客與外掛程式的世界。多數的開發者都將注意力放在對瀏覽器的支
援,如 IE6、Firefox、Safari 等等。他們試著編寫簡潔的語義標記,並關心 XHTML 可
否產生預期的效果,偶爾也會匯入 JavaScript 程式庫來建構一些還不錯的特效,並使用
prototype.js
或 jQuery 當作程式的骨幹(沒有雙關語意)。
開發者處理瀏覽器 quirks 的方式幾乎與尋找程式 bug 一模一樣。進階的 web 應用程式
結構幾乎都由伺服器管理,應用程式非常依賴 HTTP 請求的處理速度,以及瀏覽器重新
呈現標記的速度。透過伺服器端樣板與元件框架,伺服器會解析樣板並將資料套上正規
的 XHTML 或 HTML 標記語言。對 Java 而言,或許你曾經用過 JSP、Velocity、Tiles、
GWT 或 JSF 來做同樣的工作;而在 Ruby 則是以 ERB、HAML 或 RedCloth 等等。每一
個伺服器端網路框架都隨附一個 UI 樣板引擎,這些引擎可以同時運作也可以在需要時
自由選用,這就是過去 10 年來 UI 開發者的工作方式,並且還會持續一段時間。但這不
是必然的選擇,現在是重新思考如何建構新世代 web 應用程式的時候了。
或許你會問“為什麼我們需要改變前端的生成方式?”或“為什麼我們要將程式碼移
到瀏覽器內運行,而不是在伺服器?”關於第一個問題 ...