JBuilder 2006のピアツーピア開発

投稿者: : Hitoshi Fujii

概要: JBuilder 2006に搭載されたピアツーピア機能を用いれば、遠隔地にいる2人の開発者で、コードを共有して開発、デバッグ作業を進めることができます。

    ピアツーピア開発機能

これまで、開発作業を複数の開発者で共有するには、ソースコードの共有やチャット、メールなどが主で、開発中のソースコードや、デバッグ作業などについては、結果を報告したり、成果物を共有することしかできませんでした。

現在さまざまなコラボレーションツールを利用できる環境にあるものの、開発環境における開発作業そのものについてのコラボレーションをサポートするツールは例がありませんでした。JBuilder 2006のピアツーピア機能は、JBuilderにおけるJavaコードの編集、GUIの設計、デバッグ作業などを、2人のユーザーが共同して行えるような環境を提供する画期的なものです。

JBuilder 2006のピアツーピア開発サポートには、以下の機能があります。

・ピアの自動検出、接続
・ファイルの送信
・スタックトレースの送信
・JBuilder 間チャット(LAN のみ)
・プロジェクトの共有
・共有編集
・共有デバッグ
・セキュリティ(暗号化/認証)
・リモートアクセス(WAN)
・Jabber クライアント(リモートピアとのチャット)

ピアツーピア機能は、同じLAN上にあるJBuilder同士の接続をサポートします。異なるLAN上にあるリモートピアとの接続には、Jabberサーバーを用います。http://www.jabber.org/ にてアカウントを作成してください。

相互接続したJBuilder同士は、チャット、ファイル転送、共有編集、共有デバッグが可能になります。ビアツーピア機能を用いれば、開発環境としてペアプログラミングをサポートできます。

    ピアツーピアを使う

ピアツーピアを使用するには、[コラボレーション|ピアツーピアプロパティ]メニューを選択します。ここで、[ピアツーピアサブシステムを有効にする]チェックボックスをオンにすると、ピアツーピア機能を使用できます。

Hide image
p2p_1

図1:ピアツーピアプロパティを設定

    接続

ピアツーピア機能が有効になると、プロジェクトペインに[ピア]タブが追加されます。[ピア]タブをクリックすると、現在有効なピアの一覧が表示されます。

Hide image
p2p_2

図2:有効なローカルピアが表示されます

接続したい相手を選択してダブルクリックします。すると、コラボレーションペインが表示され、接続相手との対話ができます。

Hide image
p2p_3

図3:接続に成功すると、相手の顔写真がコラボレーションペインに表示されます

    プロジェクトの共有

最初に行う作業は、プロジェクトの共有です。プロジェクトの共有は、プロジェクトファイルを持っている側が行います。[コラボレーション|プロジェクトの共有]メニューを実行すると、メニューを実行した側がホストマシンとなり、ホストマシンの現在のプロジェクトを相手側と共有できます。

Hide image
p2p_4

図4:リモート側に、ホスト側からプロジェクトを共有したことを伝えるメッセージが表示される

プロジェクトを共有すると、リモート側のコラボレーションペインに、プロジェクトを共有したというメッセージと、プロジェクトファイルへのリンクが表示されます。リンクをクリックすると、共有プロジェクトが転送され、表示されます。

Hide image
p2p_5

図5:リモート側のコラボレーションペインに表示されたプロジェクトファイルへのリンクをクリックすると、共有プロジェクトが表示される

    共有編集

プロジェクトを共有すると、接続した両者間でソースコードを表示し、編集することができます。

    トークン

プロジェクトを共有した状態でも、編集できるのはひとりだけです。編集できる側はトークンを持っています。最初にプロジェクトを共有したときには、ホスト側がトークンを持っています。相手にトークンを渡すには、[コラボレーション|トークンの提供]メニューを実行します。

    同期

リモート側は、初期状態でトレースモードに設定されています(コラボレーションペインの足跡のアイコンがオンになっています)。トレースモードでは、ホスト側の編集作業に同期し、リモート側の内容ペインは、ホスト側の操作がそのまま表示されます。リモート側では、ホスト側の編集操作や、UI設計をウォッチし、チャットなどによって、問題箇所を指摘したり、リクエストを入れることができます。

トレースモードをオフにすると、リモート側は、ホスト側の操作に関係なく、自由にファイルを閲覧することができます(トークンがないと編集操作はできません)。

Hide image
p2p_7

Hide image
p2p_8

図6-1:ホスト側が編集操作をすると…

図6-2:リモート側の表示もリアルタイムに更新される


共有編集では、コードエディタ、UIデザイナを使用できます。BeansExpress、EJBデザイナ、Strutsデザイナ等を共有することはできません。

Hide image
p2p_9

Hide image
p2p_10

図7-1:GUIの設計でも、ホスト側での操作が…

図7-2:リモート側に反映される


    共有デバッグ

ホスト側は、共有したプロジェクトで、デバッグセッションを開始することができます。この共有デバッグセッションでも、トークンを持つ側が、ブレークポイントの設定、ステップ実行、変数の評価/変更などのデバッガ操作を実行できます。

Hide image
p2p_6

図8:ホスト側はデバッグセッションを開始することができる

    ピアツーピアの用途

プロジェクトを常に共有し、開発を行うことはまずないでしょう。しかし、懸案となっているソースコードを2人で確認し、問題箇所を特定したり、対応法をディスカッションする場合には、ピアツーピア機能が有効になります。また、JBuilderのピアツーピア機能では、ソースコードだけでなく、GUI設計も共有できるため、GUIの改善を具体的に操作して指示することも可能です。

JBuilderの生産性をさらに高めるピアツーピア機能を、ぜひ試してみてください。

Hide image
devcamp256

JBuilder 2006のピアツーピア機能については、9月7日に開催される第2回デベロッパーキャンプで具体的な開発手順を説明するデモを交えてご紹介する予定です。参加費は無料です。ふるってご参加ください。



Server Response from: SC2