分享
 
 
 

深入观察Rich Clients, Java与Eclipse

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

最近以来,关于Rich Client的讨论越来越多。在FTPOnline上看到了这篇在2004/8/31发布的一则关于Rich Clients,Java和Eclipse访谈。受访者Mike Milinkovich是Eclipse组织的执行主席。

Insights on Rich Clients, Java, and Eclipse

Posted 12:32 PM

Mike Milinkovich was the newly minted executive director of the Eclipse organization when he participated in our Java Technology Roundtable during the JavaOne conference. But some of his comments stirred our interest, so we followed up to get you more detail. Here's Mike's original comment and our subsequent dialog:

Milinkovich: With rich-client platforms you can build user interfaces in Swing, with roots. So, rich-client platform is not about SWT. I mean it does support SWT out of the box, obviously, and the Swing support is only currently working on Windows and Linux, so we still have some work to do. That's why I said in terms of being able to provide a plug-in application, plug-in architecture for developers who are building rich-client applications, being able to have an update manager so you can find other plug-ins and new functionality, to have a generic workbench so you have an abstraction you can plug your other applications into and you can brand for your corporation. Those, to my mind, are all interesting features.

Q: Can you expand on your comments and update us on what Eclipse is doing in the rich client area?

Milinkovich: The main benefits of RCP [Rich Client Platform] include:

RCP provides a pre-built, extensible, well-designed architecture that allows developers to immediately begin working on adding application functionality rather than on building infrastructure. When building desktop applications on the Eclipse RCP, a development team can quickly begin designing end-user functionality, and delivering it. Without the RCP, they need to talk about window management, toolbar management, menu management, and get solutions for these and other basic infrastructure issues in place before they can really build an application.

The ability to create rich user interfaces for client-side applications using SWT and JFace. Developers can deliver rich client applications written in Java, which are essentially indistinguishable from native applications written in languages such as C/C++/C#. But at the same time, these applications are portable across all supported platforms.

The ability to provide a managed code environment that is not browser-based. With RCP, developers can provide a desktop environment that is packaged to link to a server-based update manager. This provides the ability for end users to discover new and updated functionality and apply it to their desktop environments. At the same time, system administrators can be confident that they can control what is deployed on the managed desktops.

The ability to create, manage, and brand desktop applications using the GenericWorkbench allows enterprise developers to create a well-defined end-user environment to which they can deploy new applications.

There is a wealth of information available on our Web site that discusses what the RCP is and how it can be used. Pointers include:

http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/platform-ui-home/rcp/index.html

http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/platform-ui-home/rcp/faq.html

http://help.eclipse.org/help30/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/rcp.htm

http://www.eclipsecon.org/EclipseCon_2004_TechnicalTrackPresentations/11_Edgar.pdf

http://www.eclipsecon.org/EclipseCon_2004_TechnicalTrackPresentations/14_McAffer.pdf

Q: How can smaller, potential GUI component suppliers participate?

Milinkovich: Eclipse has a well-known and vibrant commercial ecosystem. For people who are interested in creating components and making them available—either in open source or commercially—they can work with the Web sites listed at http://www.eclipse.org/community/index.html (then click on "Sources of Information about Eclipse"). There is a wealth of technical information as well. For those interested in getting started, I would suggest the three-part technical tutorial at http://eclipse.org/articles/Article-RCP-1/tutorial1.html.

Q. Re: JSR 198. You commented that it was technical feasible, then the discussion went off in another direction.

Milinkovich: The key point I was making is that we can adopt plug-in models that technically address the issue. For example, Eclipse has a very mature plug-in model. In particular, it was designed with scalability on the order of a thousand plug-ins in mind. The details of the JSR 198 plug-in model are not available to the development community. However, given the diverse interests of the players in the JCP, it might be difficult to obtain a consensus. 198 has been in existence for almost two years now. I am sure the development community will be interested in seeing tangible progress from the JSR.

As Eclipse is a strong supporter of open standards, we needed to look elsewhere for a plug-in standard to base our component runtime on. More details on that are below.

Q: What is Eclipse doing about IDE component plug-ins, and how does this relate to JSR 198?

Milinkovich: Eclipse has a plug-in model based upon the Open Services Gateway Initiative (OSGi) standard. The entire Eclipse platform is built on top of this open plug-in model. This approach has proven to be very successful. The open, pluggable nature of Eclipse has spawned a large ecosystem of third-party providers that are shipping commercial and open source plug-ins for Eclipse today.

Q: Do you expect a standard to be adopted?

Milinkovich: I believe that there already is a standard—the OSGi-based plug-in model that is used in Eclipse. Eclipse provides a real implementation that exists, is open source, and is well-documented. At the current time, the JSR 198 team has not yet issued a public draft specification, so it is difficult for the open development community to evaluate the proposed technology because of the closed nature of their proceedings.

The idea of "write a plug-in once, run it in every IDE" sounds appealing. However, one has to understand that this is a comprehensive problem. Interesting IDE plug-ins are deep. That is, they seamlessly integrate into the IDE and add interesting new functionality.

Consider a UML modeling tool that can update the diagram when the source in the code editor changes. To do so requires more than an API to add an action to a menu. What is needed is an API to the abstract syntax tree of the edited source. This requires us to standardize many non-trivial APIs.

Any spec that emerges from JSR 198 will clearly introduce a lot of new APIs. These APIs will need to be validated, and industry adoption will depend heavily on the success of the validation process. The Eclipse approach is different. APIs are specified, validated, and kept stable as part of an open development process.

Q: Do you expect a market to emerge for UI and other IDE plug-ins as has happened with Visual Basic? If yes, when and how?

Milinkovich: It already has. The Eclipse Foundation currently has more than 50 add-in provider members—companies that are developing pluggable technologies that interoperate with Eclipse. In addition, there is a vibrant open source community that has built up around Eclipse technology. The Eclipse market is robust and rapidly growing.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有