Lift:最も強力で安全なWebフレームワークですか?

非常に野心的な声明は、プロジェクトの公式ウェブサイトで見ることができます。 例でこれを確認することもそこに提案されます。 個人的に判断するのは難しいです。JavaWebフレームワークのみを使用し、すべてを使用したわけではありません。 したがって、私はこれについてあなたにもっと話そうとし、誰もが結論を引き出すようにします。











注意すべき最も重要なことは、「すべてのベスト」ステートメントの欠如です。 そして、Liftがほとんどのフレームワークよりも複雑であるという理由だけで、これは理解できます。 第一に、 Scalaの機能面を積極的に使用しているため、そして第二に、Scalaは強力な静的型付けを備えた言語であるためです。 しかし、学ぶ準備ができている人にとって、Liftは非常に強力なツールです(経験から、過去数か月間、これを使用してきました)。



最初に、いくつかの背景情報。



主な事実:



既に述べたように、LiftはScalaの機能面を積極的に使用します。 これは、まず、クライアントから情報を送受信する方法、変換する方法、実装するインターフェイス、適切に接続する方法について考える必要がないという事実に反映されています。 代わりに、あなたは何をすべきかを書くだけです 。 最も単純な古典的な例:ボタンをクリックすると、サーバーにリクエストが送信され、そこでアクションが実行され、その後、ブラウザーに回答が送信されるボタンがあります。 コードを見てください。



テンプレート:

<button id="b">Push me</button>







Scalaコード:

"#b [onclick]" #> ajaxInvoke(() => {println("server"); Alert("client")})







コンソールにメッセージを出力し、クライアントで実行するためにJavaScriptを返します。 それだけです! 最小コード、最大結果。 このアプローチは、フレームワークのすべての部分で追跡できます。



七つのこと



他のフレームワークでははるかに困難になるか、まったく実装されないLiftから:





そして他のすべて



上記の機能に加えて、必要なすべてのセットがあります。



等 など これらすべてに、Scala言語自体のパワーを追加することが重要です。個人的には、Javaで長年働いた後、毎日私を喜ばせることをやめることはありません。



これらすべてに対処する方法は?



昨年は3回Liftを徹底的に試しました。 そして、どういうわけか彼はその本質を理解できず、それを投げた。 私はVaadinで作業するためのプロトタイプWebインターフェースの作成さえ始めました。 しかし、2010年の終わりに、もう一度試してみて、私はそれを理解することができました、そして今、私はひどく嬉しいです。 失敗した理由は、主に機能的なアプローチに慣れる必要があるためだと思います。 Javaの習慣は実際には深く根付いており、異なるコンテキストで考えることを難しくしています。



したがって、 Liftを本格的に使用する前に、おそらくScalaの機能を使用することに自信を持ってください



まともなScalaとLiftの本はすべて無料または入手が簡単です。 Scalaの場合、最適なオプションはScalaのプログラミング第2版です。 Liftは、主にディストリビューションのサンプル、 Wiki 、および作成者の無料の本-Simply Liftによって学習しました。 よく考えられた質問は、 StackOverflow、またはScalaLiftの Googleグループで迅速かつ効率的に回答されます。



All Articles