2010-12-08 14 views
3

ScalaでRIAをプログラミングするための「最良の」方法が何か不思議です。Scala RIA with Liftおよび

私はScalaを初めて使い、どこで学習を始めるべきかを知りたいと思っています。 Webアプリケーションの場合、LiftはScalaと組み合わせるのに最適な選択肢であることは明らかです。しかし、私が今まで見たことから、Liftは本当に素晴らしいビジュアルに鍵を提供していません。確かに、Javaとの互換性のために何百ものフレームワークが存在しますが、あまり役に立ちません。

お勧めですか?

一般的な設定は何ですか?

特に、私は非常に印象的なフレームワークであるカプチーノを見つけました。 http://www.scala-lang.org/node/7281 カプチーノはObjective-Jという名前の言語用に設計されているようです。それは私にとって大きな妥当性のようには聞こえません。しかし、どういうわけか彼らは一緒に働くことができます。 http://frothy.liftweb.net/

答えて

1

もちろんそれはすべてによって異なります。個人的には、前にREPLでScalaを使用していただけで、構文を知るためにいくつかの話をしていたにもかかわらず、Liftから始めても問題はありませんでした。

明示的なループなしで機能的な方法でコレクションを使用する方法を既に理解している場合は、他の人のコードをより簡単に読んで理解することができます。しかし、基本的には、関数型言語のバックグラウンドがなくても、LiftとScalaの両方を同時に学ぶことができます。それは、あなたが慣れていなければならないコレクションのことです。あなたがRuby(またはリスト内包表記のある言語)を知っている場合は、それを簡単に理解できます。

FrothyインテグレーションはまだLiftの最新バージョンに更新されておらず、実際にそれを使用しているサイトはわかりませんが、Lift mailing listで尋ねるべきことかもしれません。いずれにしても、FrothyはLiftセットアップをいくつかのカプチーノフロントエンドに接続するのに役立ちますが、Objective-Jコードには多くのラッパーを提供しないため、Objective-Jにコードを書く必要があります。

その時点で、あなたは自分自身に質問することができます:なぜカプチーノですべてを書いておき、実際にリフトの統合が必要なのかは後で判断してください。

リフトだけを検討する:あなたは確かにビジュアルにJQuery UIのようないくつかのUIキットでリフトを使うことができます。Liftには高度な可能性があり、複雑なWebアプリケーションを構築することは可能ですが、ビジュアルの配線については気を付けなければなりません。
(おそらく、リフトのようなステートフルなMVC以外のビューフレームワークは、純粋なMVCフレームワークよりもリッチインターネットアプリケーションに適しているかもしれません...)

+0

どこでLiftを使用し、JQuey UIはどこですか? JQueryはGUI全体にJavascriptが必要なような臭いがあります。個人的に私はJavascriptを嫌い、Liftがそのほとんどを置き換えることを望んでいました。 – lhk

+0

JQuery UIを使用する必要はありません。ビジュアルをスタイリングするための提案に過ぎませんでした。それ以外のものについては、LiftはすべてのJavaScriptをヘルパーメソッドでラップしようとしているので、それらを書く必要はなく、これらのメソッドを使うだけです。 – Debilski

+0

JQuery UIを使用した場合、私のコードはどのように見えますか? – lhk

2

さてあなたは、スカラ座に新しいしている場合は、新しいプログラミング言語Webフレームワークを学ぶことは難しいですので、あなたはおそらく、Playを試してみてください。

Playに大きなコミュニティがあり、ユーザーフレンドリーなようです(ブラウザのF5キーを押すとコードがリロードされ、発生したエラーが表示されます)。

通常、どのJava WebフレームワークもScalaでも使用できますが、PlayはScalaに優しいようです。

Scala固有のWebフレームワークもかなりありますが、詳細については十分にはわかりません。

リフトは強力で印象的なフレームワークですが、初心者のためのものはありません。 (私は「Scalaの新機能」は「何十年もHaskell、ML and Schemeでプログラミングされた」という意味ではない)

+0

"他の関数型言語での広大な経験を隠蔽しません。さらに、Playは素晴らしく見えます。それでも私はまだPlayを使用していないので、ScalaとPlayを学ぶことはScalaとLiftを学ぶだけでなく、新しい言語+フレームワークを学ぶことになります。 Javaで使われることになっているPlayの代わりにScalaで使用されるLiftを学ぶ方が理にかなっていませんか? – lhk

+1

Playは主にJava開発者を対象としているため、「平均」なプレイヤーにはもっと適しています。私はかなりの時間以来Scalaを使っていますが、私はまだLiftの魔法の全てを理解していません。 – soc

関連する問題