模块化Java:声明式模块化
本文是模块化Java系列文章的第4篇,介绍的是声明式模块化。文中描述了组件如何以声明的方式来定义并组织在一起,而无需让代码依赖于OSGI API。
作者 Geoffrey Wiseman 译者 朱永光 发布于 2007年6月21日 下午9时17分
从Ajax到SilverLight,从Apollo和AIR(Adobe Integrated Runtime)到Flex和Flash,从JavaFX到OpenLaszlo,RIA(丰富互联网应用程序, Rich Internet Aplications)似乎已经成为这些天每个人话题的焦点。供应商们都争取成为被关注的重点,开发人员也在试图选择一种“正确”的技术。
在所有的喧闹和混乱中,很容易迷失真相的踪迹,当他们讨论RIA的时候,所指有所不同。RIA应该如何被构建,从Chris Messina的在Mozilla之上思考和Brendan Eich认为的开放Web,到由Microsoft 和Adobe 提供的新技术,都有着各自的哲学。
Simon Morris研究了上面提到的所有技术,并提炼出一个RIA的分类,即所谓的“RIA世界里的三种不同信仰”。
浏览器主义是信仰浏览器(或者一些类似的以页面为中心、面向标记、HTTP绑定的中间件平台)是未来最终用户面对的软件;这个信仰仅仅基于这样的观测:Web目前是作为访问互联网的主导工具。
新式桌面主义的信仰是浏览器作为一个最终用户面对的应用程序平台,终将成为一条被改变的死路。新式桌面主义的目标是,努力将传统桌面应用程序的技术发展推进到它们能自由地进行本地客户端安装,像网页那样在需要时才进行部署的境界。
实用新式桌面主义还是认为浏览器作为一个最终用户面对的应用程序平台,终将成为一条被改变的死路,但他们也认识到一时还不能完全替代浏览器。
把上面的风凉话放到一旁,在RIA技术的范围中确实存在着3个重要的阵营。Simon对他喜欢的(RIA构建)哲学继续解释道:
一个可取的RIA平台,我建议,将由现在的富非互联网应用程序(Rich Non-internet Application)平台(如常规的桌面应用程序技术)变化而来,运行于网络空间,既保留了所有丰富的功能又能在用户界面上使用原先的技巧,而不是像 有些人费力去促使的那样(使用全新的技术)。
Will Hartung指出(现在的)一些应用程序把这些阵营之间的界线变模糊了:
让Simon困惑的是,Thunderbird属于什么?是浏览器主义还是新式桌面主义?Thunderbird的很多地方由Javascript写成。 重要的目标是进一步重构运行在Thunderbird(和Firefox)后端的运行时,以便让它成为一个(不被任何厂商主导的)更好的客户端应用程序开 发平台。
那么,RIA的未来在哪里?它们重要吗?哪个技术和架构你认为将会存活下来,并为我们在将来构建应用程序开辟道路?
我们将一直跟进RIA发展的情况,想获得进一步的信息,请随时关注InfoQ。
查看英文原文:The Three Religions of Rich Internet ApplicationsRIA是一种颠覆传统互联网交互的方式,具有B/S和C/S的双重优点,能满足用户对网络交互的需求。
基于这种思想的RIA应用能使更多的人参与到web应用中,体验新网络方式带来的快感。
浏览器应用之所以不能和桌面相提并论,就是由于安全性考虑而收到了诸多限制。 就好比外国产品不能享受国内产品的待遇——要收关税——一样。 如果认为将来就一定是全球化大市场,自然不必区分桌面还是浏览器,一并允许安装即可。 要是认为仍然需要桌面应用的安全性特权, 也许会持浏览器主义——所有RIA都仍然跑在浏览器中,仍然需要授权才能访问本地。
对安全性的心理惯性导致了浏览器主义受到用户(而不是开发者和评论家!)的认可,短期内新桌面主义可能会发展缓慢。
但我看来,浏览器主义发展到极致,80%的用户应用都跑在浏览器的RIA应用上的时候,浏览器应用的安全性需求就类似于现在OS的安全性需求了——也就是说,没有再区分二者安全性的理由了,这个时候,还需要浏览器么?
所以实用新式桌面主义是理智的。
本采访是在伦敦举行的QCon2009上记录的,Ian Robinson和Jim Webber探讨了如何将Web作为整合平台以及REST在理论上和实践中的好处。
项目管理对于项目成败至关重要,但实践中每个项目都有自己的独特性,没有现成的解决方案可以套用。书中从应对实际风险的角度出发,讲述了从项目启动、项目规划到项目结束的整个管理流程,展示了作者的思考过程。本迷你书从原书中精选出5个章节。
在这个演讲中,Fred将会揭示敏捷的一些外在因素,并会重点关注敏捷获得成功的内在原因。从案例研究和真实的项目经验来看,Fred认为:工具、管理体系都不能让你变得敏捷。敏捷的成功,植根于士气高涨、充分授权的工作者身上,他们能够以不同以往的方式思考问题。
Eben Hewitt的新书《Java SOA Cookbook》从Java实现的角度讨论了面向服务架构。Eben在书中讨论了SOA基础、工具、最佳实践和SOA治理等主题。
Mark Richards的新书《Java消息服务》第二版覆盖了JMS的许多主题, 包括发布和订阅模式以及点对点模式,消息过滤和事务等。InfoQ与Mark谈论了跟他的新作。
3 条回复
关注此讨论 回复