2013-02-28 80 views
-2

我打算在scala中開發一個web應用程序。我是scala的新手,並且在可用的框架中感到困惑。我是否應該去參加比賽或檢票。我有一些使用MVC架構的經驗。請解釋我使用它們的優點和缺點。我可以結合使用它們嗎?比賽vs wicket?

在此先感謝。

+1

如果您打算在Scala中編程,您會在Play社區或Lift中找到更多支持(我猜)。另請參閱http://stackoverflow.com/questions/2104724/your-experience-with-scalawicket – oluies 2013-02-28 08:17:09

+1

我不知道Wicket是否支持Scala - 我從兩種框架(play 1.2.x)的經驗中知道的是,您可以使用play框架進行更快的開發,因爲幾乎沒有任何html/javascript/ajax功能限制,其中ajax調用可能很難/需要在wicket中實現大量工作 – evandongen 2013-02-28 09:04:53

回答

1

Play和Wicket都是具有堅實設計和優秀,積極和響應社區的框架。我在一箇中等規模的項目中使用Wicket,每當我問到關於Wicket mailing list的問題時,我都幾乎得到了即時反饋。

一兩個框架之間的主要區別是他們處理狀態方式:在服務器上的Wicket商店狀態,而玩遵循REST「無狀態」的原則非常緊密,在客戶端上有利於國家(或URL)。

例如,考慮一個簡單的AJAX計數器:

  • 在一個典型的檢票執行(見Wicket Ajax Counter example),你會存儲在服務器(在Model[Integer])在櫃檯上。當您點擊鏈接時,將對服務器進行AJAX調用,在該模式下更新模型(即計數器遞增),並更新計數器的HTML標記發回並顯示。
  • 播放實現很可能會將客戶端的網頁上的計數器存儲起來,並使用類似jQuery的內容更新計數器。

在服務器上存儲狀態有其優點(例如,易於使用的程序員)等根據您的業務需求不足(會話超時態損耗),一個框架可能比其他更合適。

+0

我可以將它們相互結合使用嗎? – 2013-02-28 09:26:43

+1

你爲什麼要這樣? - 你可以使用相同的後端,在Wicket上運行一個UI,在Play上運行另一個UI,是的。 – Hbf 2013-02-28 09:57:29