文章导读
1、从丑小鸭到天鹅的演化:Jbuilder的发展史
2、Jbuilder 2006 低谷中的自救
3、对等协作 JBuilder 2006最具特色的新功能
4、JBuilder 2006的其他新特性
对等协作 JBuilder 2006最具特色的新功能 9月2日发布的Borland JBuilder 2006创造性引入P2P对等协作功能,使开发团队能够跨越地域的限制进行即时交互(chatting, editing, designing, and debugging),实现虚拟化团队编程(Virtual Peer Programming)。 下面我们模拟两个团队成员(Tom和Angel)在局域网内的具体协作过程来说明JBuilder 2006的对等协作新功能。 1) Tom打开JBuilder 2006,通过JBuilder 2006中新的菜单Collaborate菜单设置协作账号的属性: Collaborate->Peer to Peer Properties…->打开Properties对话框,如图 2所示:
这里,Tom仅简单地设置了自己的名字,通过Choose Icon…按键可以选择一个图标。 2) Tom创建一个名为testPro的工程,在工程中通过File->New…->General->Application创建一个Application,其主入口类名为App,主窗体类名为MainFrame。 3) Angel在局域网的另一台机器上启动JBuilder 2006,如1)步一样建立一个名为Angel的协作账号。 4) Tom将工程窗格切换到Peers的标签页上,将发现JBuilder 2006已经自动探测到了Angel,并将Angel列在可选协作人员名单中,如图 3所示:
图 3 建立协作联系
Tom双击Peers标签页中的Angel,JBuilder窗体右侧出现一个Collaboration对等协作窗格。Tomo可以通过这个窗格和Angel进行对话,进行初步联系。 5) Tom单击Collaboration窗格的 图标将testPro.jpx工程共享给Angel,Angel的JBuilder中将马上出现来自Tom共享工程的通知信息,提示Tom正要将testPro的工程共享给她,如图 4所示:
图 4 Angel被告知Tom正要共享工程给她
Angel仅需点击testPro.jpx的链接即可获得Tom的testPro.jpx工程的共享权。当Angel接受了Tom的共享工程后,Tom端的JBuilder自动将testPro.jpx整个工程的文件发送给Angel,并在Angel的JBuilder中展现。此时Angel所看到的内容和Tom是完全一样的,可以称其为Tom JBuilder的"镜像JBuilder",但此时Angel还不能对工程的文件进行任何修改。Angel将工程窗格切换到Project标签页上,可以看到这个文件现在处理Remote Read Only状态,如图 5所示:
图 5 Angel的工程窗格显示共享工程的状态
在JBuilder 2006多人协作的环境中,同时只能有一人拥有编辑工程的权限,在获取工程的编辑权限之前必须得到工程的令牌(Token)。工程的拥有者(我们的例子中是Tom)可以将令牌传送给协作中的任何一个人,也可以从执有者手中取回令牌。 6) Tom在Collaboration窗格中点击 图标,在下拉的菜单中点击Angel,这样,Tom就将工程令牌传给Angel了,如图 6所示:
图 6 Tom将令牌传递给Angel
7) Angel在得到令牌后,就拥有了编辑工程文件的权限。注意:工程窗格工程结构树文件后的标识已经从[Remote Read Only]转变为[Remote]。Angel对工程文件的任何编辑将会即时同步到Tom的JBuilder中。Angel打开App.java文件,将第25~35行置为同步编辑状态,将screenSize变量改变为screenSize1,如图 7所示:
图 7 Angel对App进行编辑
Tom的JBuilder界面即时看到了Angel的这个调整,Angel还通过对聊窗口对Tom说:"我将screenSize变量调整为screenSize1",如图 8所示:
图 8 Tom看到了Angel的更改
8) 对等协作不但可以同享编辑器,还可以共享UI设计器。Angel打开MainFrame.java,并切换Design视图页上打开UI设计器,对MainFrame的界面进行设计。此时Tom的JBuilder也将自动切换到MainFrame的设计窗口中和Angel的JBuilder保持同步。Angel在MainFrame的界面上添加了一个按钮,如图 9所示:
图 9 Angel通过共享设计器设计界面
Tom在自己的JBuilder中马上也看到了这一变化,就好象幕后有一双无形的手在操作在自己JBuilder中设计着MainFrame界面一样。 9) Angel完成了设计工作后,Tom通过Collaboration窗格中如下的操作收回编辑令牌:
图 10 Tom从Angel手中取回令牌
收回令牌后,Tom即可以对工程进入编辑了。同样的,Tom对工程所做的任何编辑动作将即时同步到Angel的JBuilder窗口中。 10) 在这一步里,Tom要和Angel进行共享调试的协作。Tom在工程窗格在App.java中右击,在弹出的菜单中选择Debug using "App",此时Tom的JBuilder调出调试信息窗格,Tom对程序进行单步调试跟踪,Angel的JBuilder也同时反映出相同的操作。虽然Angel此时不能进行调试的控制(如单步运行、跳过方法、移到下个断点等),但她可以通过Add Watch窗口查看运行期变量信息,如下图所示:
图 11 Angel在共享调试窗口查看运行期变量
11) 在完成一系列对等协作后,Tom可以通过Collaboration窗格的 按钮,收回工程共享的权限。 对等协作除可以在协作成员间共享编辑器,设计器、调试器、并进行对聊的功能外,JBuilder的对等协作还可以传送文件,发送URL连接,发送运行期的堆栈迹,此外令牌的执有者还可以将当前编辑器所处的程序代码的位置通过Send Line Like发送给其他成员,使其他成员编辑器定位到相同的地方,如所示:
图 12 编辑器位置协作定位
这不啻为是一个细心的功能,因为团队成员位于不同地方,在协作时,当你希望其他成员转向某个程序文件的某行代码时,往往需要花费一番口舌,但有了这项贴心的功能一切变得一蹴而就了。 此外JBuilder还允许对传输进行安全的设置,对传送的信息进行加密和认证,确保协作的安全。 如果JBuilder端点分布于WAN上,JBuilder则使用一种称为Jabber的开源即时信息发送协议,为了和远程的端点协作,你必须在Jabber Server上创建一个帐号,可以通过http://www.jabber.org来了解更多关于Jabber的信息。