模块化Java:声明式模块化
本文是模块化Java系列文章的第4篇,介绍的是声明式模块化。文中描述了组件如何以声明的方式来定义并组织在一起,而无需让代码依赖于OSGI API。
作者 朱永光 发布于 2007年11月26日 上午7时32分
最近,Db4Objects公司发布了他们对象数据库产品db4o的7.0版。
db4o被很多著名的企业所使用,如:波音公司、希捷公司、IBM和Intel等。
作为一款成功的对象数据库产品,它具有如下特点:
国内的db4o爱好者Rosen Jiang、张黄瞩和Chris在IBM developerWork中国上曾发表过《开源面向对象数据库 db4o 之旅》系列文章,讲述了在Java平台上如何使用db4o。在db4o自带的教程中,可以学习到在.NET上使用db4o也极其简单:
// accessDb4o
IObjectContainer db = Db4oFactory.OpenFile(Util.YapFileName);
try
{
// do something with db4o
}
finally
{
db.Close();
}// storeFirstPilot
Pilot pilot1 = new Pilot("Michael Schumacher", 100);
db.Set(pilot1);// retrieveAllPilotQBE
Pilot proto = new Pilot(null, 0);
IObjectSet result = db.Get(proto);// deleteFirstPilotByName
IObjectSet result = db.Get(new Pilot("Michael Schumacher", 0));
Pilot found = (Pilot)result.Next();
db.Delete(found);
db4o在国内也有一些运用实例。Rosen Jiang的文章《实战 OpenLaszlo 与 db4o》向大家介绍了一个db4o和OpenLaszlo结合实现RIA的案例。在一个名为“敏捷实验室”的开发团队中,他们使用db4o来开发他们内部开发框架中的离线缓存机制和服务端字典缓存机制。通过以上例子,我们可以看到合理运用db4o,确实可以显著简化开发过程,Ted Neward也有同感。目前,db4objects公司和爱好者正在积极推进db4o运用于Google Android平台,以期让db4o成为Android上首选的数据库平台,更多信息可以访问他们的论坛。
在最新发布的7.0版本中,带来了如下新特性和加强:
透明激活(Transparent Activation,TA)是7.0版本中最重要的新特性:
透明激活能自动的检测到那个对象会被应用程序所访问,因此只从磁盘上加载最小内容,这样就能让内存消耗更少,让性能显著提升。目前,db4o 7.0只发布了Java平台的Beta版本,.NET版本已经被列入了十二月的开发计划,并有望在2008年第一季度发布。你可以通过这里下载所有的版本。
本采访是在伦敦举行的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 条回复
关注此讨论 回复