0

令人驚訝的是,更多的程序員社區中有多少程序員會問「我該如何做EXTJS後端?」等問題。或者「我如何將jQuery與Java集成?」,不理解客戶端和服務器之間的區別。然後我開始思考,有沒有框架服務器實際發送JS或什麼東西給客戶端執行?圍繞這些方法的哲學思考是什麼?客戶機/服務器始終是分開的!或者他們?

編輯 - 澄清:

我不是問如果有可能,我問如果一個很好的策略,或在frownded。我不問客戶端語言是否可以在服務器上運行。我在問是否有圍繞動態服務動態客戶端代碼的框架。

+2

asp.net webforms模型是臭名昭着的(通過js到前端執行,而不是JSON記住你) – Pierreten 2010-07-28 00:41:26

+0

林不知道你的問題,但它似乎類似於RMI ... – 2010-07-28 05:58:32

回答

1

許多不同的框架做到這一點,當你在做ASP.NET的工作,你會不斷地看到在客戶端回發調用,這是由框架生成,是一個Javascript調用。在Java世界中,大多數JSF框架都或多或少地對此做出了規定。只要你還記得「永不相信客戶」的規則,我認爲這沒什麼壞處。所以,如果你打算在客戶端上用Javascript進行字段驗證,那麼它不會讓你不必在服務器端做同樣的檢查。不久之前,我做了一個大型的Flex應用程序,並且作爲其中的一部分,我開始創建一個模塊來讀取Hibernate驗證註釋並自動在Actionscript上創建相同的驗證,截止日期過後,但是我確實喜歡能夠在後端設置一次驗證並讓它們在客戶端進行檢查的想法,從而節省了往返服務器的時間。

0

將JavaScript發送到客戶端很簡單。只需將腳本標記中的URL指向動態腳本,而不是靜態.js文件即可。

至於在服務器端運行JavaScript,像Node.js這樣的東西可以讓你這樣做,儘管它們與瀏覽器沒有相同的交互級別。

0

物理障礙絕對存在。 HTML/JavaScript/ActionScript將在客戶端空間中運行,並將(實質上)對後端進行遠程過程調用。由於這種裂痕,你將無法消除客戶機/服務器體系結構。

這就是皮埃爾滕說的很好,微軟的ASP.NET API大量使用自動生成的JavaScript來與服務器端組件進行交互。也就是說,您將表單控件添加到您的項目中,併爲您生成服務器和客戶端代碼。

+0

嗯,這種方法有沒有特殊的名稱?或者是否有一個特殊的名稱來表示客戶端和服務器代碼的完全分離,就像在服務器上構建可供任何人想要構建的客戶端使用的json端點一樣? – hvgotcodes 2010-07-28 00:51:18

0
+0

這不是一個創建動態js(動態)的服務器端框架。它是一個用於生成靜態js代碼的java框架。或者我錯了? – hvgotcodes 2010-07-28 01:42:33

+0

我不知道 - 我沒有用過;我只看到它,並認爲它可能適合你所要求的。 – 2010-07-28 12:22:52

+0

我認爲這取決於您對「動態js」的定義,因爲您正在編寫Java,那麼所有的javascript都正在生成,但是它正在編譯時完成。 – mezmo 2010-07-28 13:40:41