2010-08-16 43 views
4

Symfony .NET框架Zend框架和所有其他框架有不同的視圖助手處理表單和服務器和服務器上的Javascript吐出HTML然後它來到瀏覽器。當我們有CLient計算機來處理所有的渲染時,這是否會讓事情變得緩慢並給服務器帶來不必要的負擔。如果一切都在CLient-Side處理,事情也會變得很快。那麼多框架使用服務器端表單和Javascript處理?

此外,設計師給我們HTML/CSS/JS,我們必須將其轉換爲特定框架的Helper格式。隨着ZF需要花費大量的時間和插手裝飾:)

我的意思是,我們可以使用jQuery或道場或其它JS庫的「JS」部分,只要它不需要服務器端處理:)

這是否過度?處理速度將變快,服務器負載將減少,設計者/程序員交互將無縫和即時。

爲什麼不使用Plain HTML/CSS/JS來查看MVC的部分?

回答

1

幾個原因:

  • 的數據必須來自服務器在任何情況下
  • 並非所有的客戶端都支持JS,並將它啓用 **搜索引擎是用戶的一個很好的例子,其別牛逼普遍支持JS
  • 鏈接是很容易,當你不擺弄#
  • 瀏覽器不具有相同的DOM和JS實現
1

任何一種方法涉及的服務器處理時間與後端正在進行的其他事情相比都是微不足道的。

表單驗證存在於兩端,因爲即使客戶端表單驗證是完美的,您仍然需要處理來自網頁以外的來源(機器人,探測器,惡意攻擊等)的對您的URL的請求。至少您的模型和/或表單處理代碼需要拒絕虛假數據。

我們不使用純HTML作爲視圖,因爲用戶期望更多的出於他們的體驗而不是簡單的頁面發佈到另一個頁面。

由於Javascript的發明(也許<形式>本身),處理編程形式的最佳方式從來沒有一個明確的共識。有太多的人爲任何一種方法進行太多不同類型的網絡開發。

所以,當你發明處理表格的完美方式時,一定要開源你的代碼並與世界分享! ;)

1

從我解釋你的問題的方式來看,我最大的理由似乎是被瀏覽器抓取。動態生成服務器端的HTML對於瀏覽器來說只是簡單的HTML,所以它就像這樣被抓取。如果它們是通過Javascript通過Javascript操作創建的,則結果可能無法通過抓取工具正確解析(如果根本解析)。

在極端情況下,你可能只有一個帶有JavaScript和數據的骨架,整個頁面都是客戶端生成的,但是對於設計者來說,我認爲要比學習在任何框架中使用的模板語言更難正在使用。