2010-12-21 45 views
3

我需要制定符合下列要求的Web應用程序:用Django開發RIA - 什麼技術堆棧?

  • 桌面就像在客戶端UI
  • 應用程序部署
  • 可擴展性(即分佈在多個服務器上的服務)

我到目前爲止的想法(因爲我愛Python,但還沒有做過很多網頁開發):

  • Django的
  • 面料(覺得我讀的地方它是適合這個)

什麼我缺少的是:

  • 如何創建富客戶端(可能需要一些JavaScript庫那)?
  • 如何分配服務?

回答

3

對於RIA,您需要在模板中使用某些客戶端技術。

請參閱DojoExtJs。 ExtJs文檔有Web桌面應用程序的示例,但該庫對商業項目不是免費的。我喜歡更多的Dojo,而且它是免費的。

+0

我可以在第一步中將客戶端作爲靜態網站開發,然後再添加動態內容嗎? – helpermethod 2010-12-21 10:54:04

+3

當然可以。你可以在你的模板中做所有事情,它們只是帶有一些django模板標籤的html頁面。從簡單的頁面開始,然後添加一些JavaScript庫的動態行爲,樣式您的網頁與CSS ... – Stan 2010-12-21 10:57:23

+0

可能說靜態頁面執行JavaScript?好吧,如果可能的話,你可以通過AJAX從服務器上獲取內容,並使用JavaScript工具(Dojo,jQuery等)動態構建頁面。 – OnesimusUnbound 2010-12-21 11:00:02

1

使用網絡瀏覽器作爲您的客戶端平臺?

+0

基本上,是的。 – helpermethod 2010-12-21 10:53:32

+0

好吧,我確定你不是指Adobe Air或Titanium App – OnesimusUnbound 2010-12-21 11:06:04

+0

使用Titanium App會是一個選項嗎?剛剛訪問過他們的網站,乍一看看起來很棒。 – helpermethod 2010-12-21 11:11:00

3
  • 豐富的互聯網應用:Javascript才能做的東西異步(AJAX)。如果你想在網絡上使用類似桌面的界面,那麼目前看起來好像是CoffeeScript。這是一種編譯成Javascript並適用於豐富界面的語言。
  • 部署:結構(我認爲它用於部署Python應用程序)。
  • 分佈:你將代碼部署到一個服務器上。如果你需要擴展它,你只需要一些額外的服務器(當然,如果你有特定的用法,比如數據庫上的負載很高,你還需要添加更多的數據庫服務器等,但你明白了)。
+0

+1 Coffeescript看起來不錯...你會建議先學習JS還是直接使用CoffeeScript?該語法看起來很像Python ... – helpermethod 2010-12-21 13:50:45

+0

我自己沒有拿起CoffeeScript,但它被許多項目使用,是的,語法看起來也很熟悉:-) – Tommy 2010-12-21 21:42:57

+0

我喜歡coffescript的語法/感覺,但我想你會需要一些在純JavaScript的經驗,以便能夠調試你的代碼。在瀏覽器中執行的代碼仍然是js。如果出現錯誤,您需要能夠使用螢火蟲/檢查器瞭解執行的腳本。 – kioopi 2010-12-22 09:50:41