18

3 つの Smalltalk Web アプリケーション フレームワークの違いは何ですか?

いくつかの出発点:

  • 各フレームワークのスイートスポットは? どちらの場合にどちらを使用しますか?
  • 彼らの弱点は何ですか?
  • 最もクリーンな URL を持つのはどれですか?
  • 彼らはどのように Ajax を処理しますか?
  • 持続性の使用に何らかの好みがありますか?

それぞれの種類のアプリケーションに適したフレームワークを決定しようとしています。

4

4 に答える 4

6

私はシーサイドにしか答えることができません:

ターゲット: Seasideは、再利用性と開発の生産性に重点を置いた複雑なWebアプリケーションをターゲットにしています。自動セッション状態管理と戻るボタンのサポートがあります。Seasideを使用した動的Web開発Seasideチュートリアルの2冊の無料オンラインブックにドキュメントがあります。

弱点: RESTful URLの場合、追加の作業を行う必要があります。

クリーンURL: RESTful URLの場合、追加の作業を行う必要がありますが、それだけの価値がある場合があります(Pierなど)。

AJAX: SeasideにはたくさんのAJAXライブラリが統合されています(jQueryjQueryUIPrototypescript.aculo.us、...)。統合により、Smalltalk内からこれらのライブラリへのフルアクセスが可能になります。JQueryWidgetBoxなどの新しいライブラリは簡単に統合できます。

永続性: SeasideはWebアプリケーションフレームワークであり、永続性フレームワークではありません。GemStone、GOODS、GLORPなど、自分に最適な永続性ソリューションを使用できます。

StackOverflowに関する他の質問/ディスカッションも参照してください。

于 2011-01-09T08:43:20.800 に答える
6

Iliad 側で言えることは次のとおりです。

スイート スポット: AJAX を問題なく処理します。私にとっては、それがイリアッドに転向したターニングポイントでした。また、非常に小さくて肥大化していないため、コード全体を 1 日で読んで、どのように機能するかを把握できます。

弱点:コミュニティも非常に小さいです。これにより、ドキュメント、追加のモジュール、または事前に作成されたウィジェットが不足します。OTOH のように、小規模なコミュニティはお互いに熱心に助け合う傾向があるため、ほとんどすべての疑問はメーリング リストで質問することで解決できます。

URL: Iliad のすべての呼び出しはデフォルトで AJAX であるため、URL は常にクリーンなままです。

アヤックス:うん。無料でデフォルトで。ウィジェットを #markDirty するだけで、自動的に更新されます。依存関係は、 #addDependantWidget: をウィジェットに送信するのと同じくらい簡単に定義できるため、最初のものがダーティとマークされたときに両方が更新されます。また、クライアントが JavaScript 対応のブラウザーを持っていない場合、すべての呼び出しは通常の HTTP 要求に自動的にフォールバックします。

永続性:好みはありません。モデルはフレームワークから分離されているため (これは 3 つのフレームワークに当てはまると思います)、Aida または Seaside の場合と同じガイドラインに従うことができます。

于 2011-09-20T07:38:40.803 に答える
5

そしてAida/Webの場合:

スイートスポット:リアルタイムのWebサポート、コンテンツWebサイトと複雑なWebアプリの両方、HTML5とモバイルサポート、Webサーバーが含まれているため、インストール後すぐに機能し、同じイメージから多くの仮想Webサイトを提供できます。

弱点:ドキュメントの欠如、小さなコミュニティ

URL: Aidaは最初からモトに従うため、常にクリーンなRESTのようなURLです。すべてのドメインオブジェクトはそのURLを持つことができ(これもAlan Kayによる)、ドメインオブジェクトはそれ自体でURLを選択することもできます。

Ajax:シームレスに統合されています。もう表示されません。すべてがそこにあります。Webページの一部の要素を更新するには、単にを呼び出しますe update。jQueryやその他のJavaScriptを知る必要はありません。リアルタイムのWebアプリについても同じことが言えます。WebSocketプロトコルは、ブラウザーとAidaベースのサーバー間でJSONメッセージを交換するための、サポートされているブラウザーのデフォルトの通信チャネルです。

永続性: 1時間ごとに自動スナップショットを使用するイメージベースの永続性は、デフォルトでオンになっています。次のステップのために提供されるGemstone/GLASSサポート。リレーショナル/その他のDBは、必要に応じてドメインレベルの義務です。

多くのための:

于 2011-09-20T15:15:49.903 に答える
1

Seaside の持続性ソリューションについては、ページがあります。そこにあるソリューションのほとんどは、Seaside とは独立しています。

于 2011-01-16T23:47:00.083 に答える