2011-01-09 15 views
15

3つのSmalltalk Webアプリケーションフレームワークの違いは何ですか?主な相違点:Seaside vs Aida対Iliad

いくつかの出発点:

  • 各フレームワークのためのスイートスポットとは何ですか?どちらの場合に使用しますか?
  • 弱点は何ですか?
  • どちらが一番クリーンなURLですか?
  • 彼らはどのようにAjaxを処理しますか?
  • 永続性の使用にはいくつかの選択肢がありますか?

私はどちらのフレームワークがそれぞれのアプリケーションに適しているかを判断しようとしています。私は唯一のシーサイドのために答えることができ

答えて

6

対象:シーサイドは、再利用性と開発生産性に焦点を当てた、複雑なWebアプリケーションをターゲットとしています。自動セッション状態管理とバックボタンのサポートがあります。 2つの無料オンラインブックDynamic Web Development with SeasideSeaside Tutorialは、ドキュメントを提供します。

弱さ: RESTful URLの場合、余分な作業が必要です。

クリーンURL: RESTful URLの場合、余分な作業が必要ですが、それは価値があります(例:Pier)。

AJAX:シーサイド(jQueryjQueryUIPrototypescript.aculo.us、...)に統合AJAXライブラリの多くがあります。統合により、Smalltalkからこれらのライブラリへのフルアクセスが可能になります。新しいライブラリを簡単に統合することができます。 JQueryWidgetBox

永続性:シーサイドはWebアプリケーションフレームワークであり、永続性フレームワークではありません。任意の永続性ソリューションを使用して、最適なものを選択することができます。あり、シーサイドのためのいくつかの持続性ソリューションの

+0

おかげルーカスによる比較の一部として、最新のリアルタイム・ウェブ/ HTML5を 特徴を示しています。これらの質問は良い答えを提供しました。 – elviejo79

1

:ジェムストーン、商品、GLORP、...

もStackOverflowの上にこれらの他の質問/議論を見ますpage。そこにあるソリューションのほとんどはシーサイドから独立しています。

6

私はイリアス側に何かを言うことができます。

スウィートスポット(複数可):それは痛みを伴わずAJAXを処理します。私にとっては、それが私をイリアスに変える転換期点でした。また、それは非常に小さく、膨大ではないので、一日でコード全体を読んで、それがどのように機能するか把握することができます。

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

URL: Iliadのすべての呼び出しがデフォルトでAJAXであるため、URLは常に清潔に保たれます。

Ajax: Yep。無料で、デフォルトで。ウィジェットを#markDirtyするだけで自動的に更新されます。 #addDependantWidget:をウィジェットに送信すると、依存関係が定義されやすくなります。最初のウィジェットがdirtyとマークされたときに、両方が更新されるようになります。また、クライアントにJavaScript対応ブラウザがない場合、すべての呼び出しは通常のHTTP要求に自動的に戻ります。

持続性:優先度なし。モデルはフレームワークから分離されているので(これは3つのフレームワークに当てはまると思いますが)、アイダやシーサイドと同じガイドラインに従うことができます。

5

そしてAida/Web用:

スウィートスポット:箱から出しリアルタイムWebサポート、コンテンツ・ウェブサイトや複雑なWebアプリケーション、HTML5、モバイルサポートの両方のために、それは、インストール後すぐに動作しますので、付属のWebサーバー、あなた同じ画像から多くの仮想Webサイトを提供することができます。

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

のURL:きれいなRESTのようなURLをすべての時間、アイーダはモトを開始から次のため:すべてのドメインオブジェクトはまたによって(そのURLを持つことができますAlan Kay)とドメインオブジェクトは、それ自体でURLを選択することさえできます。

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

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