2010-12-08 145 views
3

我很好奇什麼是用Scala編程RIA的「最佳」方式。斯卡拉與電梯RIA和

我是新來的斯卡拉,只想知道從哪裏開始學習。看起來很明顯,對於網絡應用來說,Lift是與Scala結合的完美選擇。但是從我目前看到的,Lift並沒有真正提供偉大視覺效果的關鍵。當然,由於Java的可兼容性,有數百種可能的框架,但這不是很有用。

您會推薦什麼?

什麼是常見設置?

其中我發現卡布奇諾,一個非常令人印象深刻的框架。 http://www.scala-lang.org/node/7281 它看起來像卡布奇諾是爲一種名爲Objective-J的語言而設計的。這對我來說聽起來不太可能。但不知何故,他們可以一起工作。 http://frothy.liftweb.net/

回答

1

當然這都取決於。就個人而言,我從Lift開始就沒有問題,即使我之前只在REPL中使用了Scala,只是爲了瞭解一些語法。

如果您已經知道如何在沒有顯式循環的情況下以功能方式使用集合,它肯定會有所幫助,因此您可以更輕鬆地閱讀和理解其他人的代碼。但基本上,我認爲即使沒有功能語言背景,同時學習Lift和Scala也是可行的。這只是你必須習慣的集合,如果你碰巧知道Ruby(或者帶有列表解析的語言),你很容易理解它。

Frothy整合尚未更新到最新版本的電梯,我不知道任何網站實際使用它,但也許這是一個問問Lift mailing list。無論如何,我認爲Frothy只會幫助你連接一個Lift設置和一些Cappuccino前端,但是不會爲Objective-J代碼提供很多包裝,所以你仍然需要在Objective-J中編寫代碼。

在這一點上,你可以問自己:爲什麼不用卡布奇諾來寫整個事情,然後決定是否需要提升集成。

單獨考慮電梯:您當然可以使用Lift和一些UI工具包,如JQuery UI用於視覺效果。Lift有許多先進的可能性,可以構建複雜的Web應用程序,但您必須關心自己的視覺佈線。 (可以說,像Lift這樣的有狀態,非MVC('先看')框架可能比純粹的MVC框架更適合富Internet應用程序......)

2

好吧,如果你是新來斯卡拉你應該嘗試Play,因爲學習web框架一種新的編程語言是很難的。

玩有一個大的社區,似乎是相當用戶友好(在您的瀏覽器中按F5重新加載您的代碼,並顯示出現的任何錯誤)。

通常任何Java Web框架都可以在Scala中使用,但Play似乎對Scala友好。

也有相當多的Scala特定的Web框架,但我不知道足以告訴你更多關於它們的信息。

電梯是一個強大而令人印象深刻的框架,但對初學者來說當然沒有什麼。 (我認爲「斯卡拉新手」並不意味着「我在Haskell,ML和Scheme中編程數十年」)。

+0

你說得對:「Scala新手」並沒有隱藏其他功能語言的豐富經驗。此外播放看起來不錯。不過,因爲我還沒有使用過Play,所以學習Scala和Play將學習一門新的語言+框架,以及學習Scala和Lift。學習Lift是爲了與Scala一起使用,而不是用於Java的Play嗎? – lhk 2010-12-09 14:32:58

+1

Play主要針對Java開發人員,因此它更迎合了「普通」的需求。我使用Scala已經有一段時間了,但我仍然不明白Lift的所有功能。 – soc 2010-12-09 23:19:07