BlazeDSとAMFでWebとデスクトップのアプリケーションを構築する
現在のRIAアーキテクチャにおいて、クライアント/サーバーの通信は重要な位置を占めています。本稿では、James WardとShashank TiwariがアドビによるオープンソースのBlazeDSメッセージングサーバーの世界へ飛び込みます。
- Java,
作者 Alexander Olaru, 翻訳者 編集部 投稿日 2008年2月7日 午後6時27分
プロジェクトのWebサイトによると、The Grinder(サイト・英語)の主要なターゲットユーザは、ヒットしているコードを理解している人たちである。それは、一連の想定される応答時間がかかる単なるブラック ボックスではない。テストはコードされ、またただ単にスクリプトされるだけではないので、プログラマはユーザインターフェイス経由の応答時間だけではなく、アプリケーションの内部階層をテストする必要がある。The Grinder 3の主な新機能は以下のとおりである。
InfoQとのインタビューで、The Grinderプロジェクトの指揮をとっているPhilip Aston氏が、新機能のリリースを駆り立てた技術上の決定に関連する背景について話してくれ、The Grinderに関する背景を詳しく説明してくれた。Aston氏は、スクリプトのサポートを追加した理由の説明から始めた。
The Grinder 2はポピュラーであったが、プロパティファイルに基づいたHTTPテストのスクリプトフォーマットにはかなりの制限があった。動的スクリプトを導入し、 HTTPテストスクリプトでのブランチ、ループおよびカスタム検証を可能にした。スクリプト言語はカスタムプラグインを必要とせずに、スクリプトから直接他のタイプのテストを可能にするという、大きなメリットがある。
Aston氏はまた、 Pythonがスクリプト言語として選ばれた理由についての洞察と興味深い歴史を話してくれた。Javaを使用してテストスクリプトを記述したり、JVMサポートでその他のスクリプト言語を使用することよりもである。
わたしは、Javaをスクリプト言語としては認めなかった。というのはThe Grinder 3がThe Grinder 2と同じように、HTTPテストで使用しやすくすることを目指しているからである。個別のコンパイルサイクル、クラスパスの操作などはこれの邪魔にあるで あろう。そうは言われながらも、JythonはJavaと最高の統合があり、Javaコードは容易にテストできる(スクリプトギャラリー(source)の多くの例を参照)。
The Grinder 3に取りかかったのは2001年で、当時はJVMスクリプトタウンでJythonおよびGroovyが唯一のホースであったので、あまり考える必要がな かった。The Grinderには、Jythonが最適だと証明されていた。Pythonは、ときどき使用する人たちにとって、ほとんどの言語より容易である。The Grinderの多くのユーザがJavaのエキスパートではないので、とにかくレコードされたスクリプトに多少の修正を入れたがる。その一方で、 より高度なシナリオでThe Grinderを使用する必要があるデベロッパにはPythonは、非常に力強いツールである。そしてJythonは既存のJavaライブラリーを自由自在に混合することを可能にする。
この話はブラウザとサーバ間のHTTP接続のようなTCPストリームに置かれるプロキシプロセスである、TCPProxyについての詳細を共有している Aston氏へと続く。Aston氏は、TCPProxyはPythonでテストスクリプトをレコードすることができ、URLパラメータの動的変数や フォームを特定することができると言及した。「ユーザはたいていレコードされたスクリプトから始め、使用されているユーザアカウントや他のアプリケーショ ンデータを含めたり、変更したり、また他のスクリプトとマージしてさまざまなシナリオをカバーしているロードを発生させるために修正をする」と彼は付け加 えた。いったんセットアップすると、テストスクリプトはThe Grinder Console(source)を通じて制御および監視可能である。
バージョン3では、先行リリースに伴うgrinder.propertiesファイルにおける多くの設定に対するサポートを縮小した。 というのもこれらの構成はテストスクリプトで直接設定することができるからである。The Grinder 2に記述されるテストスクリプトに推奨される遷移パスがどういうものかについて説明をした。
The Grinder 3は、 Grinder 2のプロパティとして解釈されるスクリプトのサンプルとともにシップされるが、テストスクリプトを再レコードすることを勧めたい。スクリプトは、 TCPProxyでレコードされ、それからThe Grinder 2と極めて同様の方法でリプレイされる。The Grinder 2ではスクリプトの振る舞いを変更したり、拡張したりする唯一の方法は、プラグインを記述するかまたは極端な場合、The Grinder自体を変更することであった。The Grinder 3では、テストスクリプトではほぼ何でも可能である。
Grinderstone(source)、 webFlange(サイト・英語)およびGrinder Analyzer(source)の3つの関連したプロジェクトのここ最近の様子が、The Grinderからベータラベルを削除することを決定付けたとAston氏は述べ、インタビューを結んだ。
原文はこちらです:http://www.infoq.com/news/2008/02/the-grinder-3
現在のRIAアーキテクチャにおいて、クライアント/サーバーの通信は重要な位置を占めています。本稿では、James WardとShashank TiwariがアドビによるオープンソースのBlazeDSメッセージングサーバーの世界へ飛び込みます。
ウィルス対策ソフトや情報漏えい防止用のソフトは、いわば影の存在です。ユーザの操作性やGUIを工夫する以上に、いかに目立たない存在となるかにその技術を注ぎ込んでいます。ここでは日立ソフトが開発した「秘文」の事例を紹介します。
Google Chartは、チャートを作成するためのWebサービスです。本稿では、Google Chartのインターフェースと、Rubyコードから簡単にチャートを生成することができるgchartrbライブラリの説明をします。
全二回からなるこの記事では、ダイナミックビジネスアプリケーション(Dynamic Business Applications:DBAs)の開発についての全体的な眺望を、アーキテクチャと方法論の観点から見ていくことになります。我々のゴールは、「ビジネスの変化や、その他に必要とされる変更に対して、いかにして容易に適応できるアプリケーションを構築していくか」を導きだすことです。
本稿では、Adrien Louis氏がESBベースのSOAに対する2つの接続形態についての賛否について説明しています。その2つとは、会社での単一のESB対「部門毎」に相互接続するESBによるシステムです。
誕生から2年を経てCometは「何が出来るのか」という議論から、「いかに実現するか」という議論に関心が移ってきたように見えます。そこで本稿では同じくJavaOneで数多く取り上げられたNetBeans 6.1とGlassFish v3を使いながら、サンプルを交えてCometを解説していく事にします。
この記事では、WSS3とMOSS 2007に難しい設定など一切せず、すぐに利用可能なWebサービスと、Javaと.NETからそのWebサービスを消費する方法に目を向けます。
この記事の始まりは、知的で思慮深い人たちの魅力的なグループが食事会を終えて話をしているところです。話はレトロスペクティブ(振り返り)プロセスの要であるプライムディレクティブ(最初の指示)に及んでいます。
No comments
返信