Apache ofbiz是Apache Open for Business的简写,顾名思义,这是一个开源的商业业务系统,项目的最新版本是12.04。
说起这个项目,用过的人(包括我在内)多半都是又爱又恨,爱是因为它为这个项目的核心内容非常的丰富,从前端销售,如网店,目录管理,内容管理;到后端的业务系统,订单,库存,采购,物流,制造(这个功能我没有用过,不熟悉)等;以及企业管理的一些模块,如财务,绩效,协作等。这些基本上把一个销售型企业的常见业务都囊括了。项目自己也实现了一套开发框架,如果是一个初创型的企业,从头开始,基于这个成熟稳定的项目上开发,会省很多力气。当然,实践的过程中,在我看来,我最喜欢的是它底层的数据模型,虽说是庞大了点:),一共900多个表吧。因为开发的过程中,随着业务的扩展,需求也在不断的变化,有些变化超出了之前的预见,数据模型也要修改,做过开发的都知道,这样改下来会有多麻烦。我们的业务基于ofbiz的这个数据模型,应付业务的变化都游刃有余,没有过大的变动。
之前说了业务,再谈谈工程方面。首先,代码的可读性非常好,命名都很规范,分析他的业务逻辑的,和他的数据结构时,我都基本上没有去找文档(其实很多也没有文档),直接看方法名,服务名,表名。基本上就能知道它的作用了。其次,ofbiz里有“服务”这个概念,也就是一个业务单元,实践中他自己也有很多服务都可以直接用了,省不少时间。一个服务完成一个业务,服务可以组合成新的服务,设置条件触发其它的服务。然后,支持流行的动态语言,比如groovy,Jython等,服务,事件都可以使用动态语言完成。
说了爱,当然也有恨。这玩意太重了,前面提到过,光表就900多个,一看就头大,另外它的开发框架也是自成一体,有功力的老手还好,毕竟道理大多是相同的。要是一新手拿着那就可怕了,一时半会儿都啃不动。很多地方都依赖配置文件,要配置的东西实在是太多了。
从总体来讲,ofbiz是一个非常优秀的一个商业开源项目。基于它开发企业业务系统会让过程变得更轻松。
后面的文章会从头开始介绍如何使用这个项目。让新手下走弯路。
Apache OFBiz指北1-概述,布布扣,bubuko.com