9

デジタルアーカイブのイントラネット用の複雑なWebアプリケーション(関連するアプリとページのセットの1つ)にMVCでjavascriptフレームワークを使用したいと思います。私はSproutCoreとJavascriptMVCを見てきました。フレームワークを1つ選び、それを使い続けたいと思います。

これら2つを比較するときに、特徴的な機能が何であるかを誰かが知っていますか?

簡単にカスタマイズ/ハッキングでき、あまり邪魔にならない、シンプルでわかりやすいものが必要ですが、同時に、コードを適切に整理し、イベント駆動型に保つための基礎を提供します。また、jqueryを実質的に使用する予定です。

sproutcoreはAppleに支えられており、日ごとに人気が高まっているように見えます。また、すばらしいグリーンWebサイトがあります:)一方、JavascriptMVCは専門性が低く、フォロワーも少なく、勢いもありません。

私は両方のチュートリアルを実行しましたが、SproutCoreにもっと感銘を受けました(JMVCチュートリアルでは、実質的なことは何もしていません)-しかし、私の心のどこかで、JMVCの方が優れていると感じています。やりすぎです-いくつかのjqueryプラグインに基づくMVC機能を提供するだけで、他のすべてにjqueryを使用できるため、柔軟性があります。SproutCoreには独自のAPIなどがもっとあるようですが...これもある意味で素晴らしいです...しかし、あなたはその中に閉じ込められています...うーん、私は混乱しています:)。

どんな考えでも大歓迎です。

4

4 に答える 4

9

JavaScriptMVC の貢献者として、私は非常に偏見を持っています。しかし、私はできる限り最善の答えを出そうとします。

JavaScriptMVC の開発にも何年もかかりました。しかし、UI 機能に焦点を当てるのではなく、そのすぐ下のレイヤーに焦点を当てました。これにはいくつかの理由があります。

  1. ほぼすべてのニーズを満たす jQuery ウィジェットを見つけることができます。これらのプラグインを競合させる理由はありません。代わりに、JavaScriptMVC はそれらを処理しようとします。
  2. ほとんどの人は、1 つまたは 2 つのカスタム ウィジェット/コントロールを必要とします。JavaScriptMVC は、これらの部分の構築と保守をできるだけ簡単にしたいと考えています。
  3. 柔軟性 + API。これを何と言ったらいいのか正確にはわかりませんが、これが私のベストショットです... JavaScriptMVC を使用して、アプリケーションのすべてのレイヤーをできるだけ理解しやすく、維持しやすくしたいと考えました。これが、低レベル ライブラリとして jQuery を選択した理由です。その API は、可能な限り dom の最適な抽象化に関するものです。通常、人々は低レベル API から直接 Widget/Control を構築します。これが、ほとんどの jQuery ウィジェットのコードが非常に似ていない理由です。コードを整理し、ベスト プラクティスを推進すると同時に、ほぼすべての要件を満たす十分な柔軟性を提供する中間層が必要でした。したがって、JavaScriptMVC を使用すると、非常に堅実な低レベルおよび中レベルのレイヤーが得られます。ただし、ウィジェットは取得できません。

JavaScriptMVC には、テスト、エラー報告、およびドキュメントがフレームワークに組み込まれています。テストは最も印象的な部分です。Selenium と envjs のテストが統合されています。

SproutCore で要件を非常に簡単に構築できる場合は、SproutCore を使用することをお勧めします。ただし、jQuery を知っている場合、多くのカスタム コントロールを作成する必要がある場合、または非常に優れたテストが必要な場合は、JavaScriptMVC を使用してください。

于 2010-07-20T22:05:21.490 に答える
8

面白いことに、わずか 1 か月ほど前に、私たちのチームはこれら 2 つのフレームワークを直接評価しました。最終的に JavaScriptMVC を選択することになり、約 1 か月間、JavaScriptMVC を実際に使用してきました。

私はそれが好きです...しかし、私はSproutCoreの大支持者でした. どちらのフレームワークも、評価するまで聞いたことがありませんでしたが、SproutCore を見て内部を調べたとき、非常に感銘を受けました。正直なところ、これほどのパワーを与えてくれるものは他にないと思います。はい、学習曲線がありますが、それを知っていれば、1 人で 5 つまたは 10 の作業を完了できるようなものです。

したがって、私はハートビートで SproutCore を使用します。

そうは言っても、JavascriptMVC (別名「JMVC」) は便利です。jQuery自体に加えて、実際には多くのことを提供するわけではありません。自分で構築するインフラストラクチャがまだいくつかあります (要件がどれほど複雑かによって異なります)。これは長所と短所の両方です。JMVC の優れた点の 1 つは、JMVC の一部の詳細を掘り下げる必要がある場合に実行できることです。

要約すると、JMVC に問題はありません。しかし、私の意見では、SproutCore の球場でさえ何もありません。

于 2010-11-26T02:19:33.000 に答える
2

それらの主な違いは、SproutCore には GUI が含まれているのに対し、JMVC はグラフィックのない低レベルのものであるため、GUI が必要な場合は、jQuery UI や jQuery プラグインなどの他のスクリプトを含めずに JMVC を使用できないことだと思います。

あなたは、「JMVC は試行錯誤をしないので、単に優れているかもしれない」とおっしゃいましたが、私はこれに同意しません。SproutCore 1.0 がリリースされるまでに何年もかかったので、開発者は優れた製品を作成する時間がありました。

SproutCore を使用することをお勧めします。おそらく、より多くのことを学ぶ必要があり、すべてを練習して理解するために多くの時間を費やすことになりますが、将来のプロジェクトにも役立つ非常に優れたフレームワークの使用方法を学ぶことができます。

于 2010-05-27T08:34:38.383 に答える
1

Sproutcore-2.0は、UIの制約を排除し、完全にカスタムのapp-uiでうまく機能します。

http://blog.sproutcore.com/announcing-sproutcore-2-0/

http://blog.sproutcore.com/dispatches-from-the-edge-dropping-in-a-sproutcore-2-0-application/

于 2011-06-01T20:38:15.643 に答える