OFBIZ(open for business),在开源社区享有崇高声誉,人称“开源的SAP”,有着无数的追随者和崇拜者,我有幸在项目中一试,虽只是用到其一小绰功能,确实感触颇深,几经峰回路转,其中辛酸苦辣,确也是一言难尽啊!
OFBIZ好吗?谁说它不好,我跟他急。
OFBIZ不好吗?谁说它好,我也跟他急。
OFBIZ给出的business上的解决方案,无数可称经典。但是没有什么是完美的,OFBIZ的几大硬伤注定将缚得它享有无数声誉而永不可能成为开发者的宠儿。
1.直到现在,OFBIZ仍只是两个人的骄傲,作为Open source的一员,没有其他更多开发者的参与,那它的明天将会走向何处呢!应用OFBIZ开发的软件的命运教于两人之手,不是每个人都有这个勇气的。(而OFBIZ恰恰是用来开发企业关键软件的,例如 ERP,SCM等,将一个企业的明天教于两人之手??)
2.开发者的个人喜好,由于对jboss的不喜欢,作为OFBIZ的开发者(两人),居然在OFBIZ3.0中不在提供部署OFBIZ到这个最流行的开源application server的脚本(虽然可以部署到jboss,但是需要花很大的工夫,对于初学者几乎是个不可能完成的任务)。出于个人喜好,强行使用Jetty。不能放开胸怀,包容不同,路只能是越来越窄。(作为开发企业级软件的软件,肯定需要支持clustering,jetty如何做?赎我无能,搜遍internet没能找到好的解决方案)
3.作为B/S架构的软件,n层之间的偶合度之紧,赎我见识短,是我以今为止仅见。一个request的变量能从头传到尾,作为二次开发者,若想重用,难度之大,无法想象。无数类的方法尽是static的,OO身手无从施展,重用成为妄想,拷贝、粘贴又或重生。Map结果从头用到尾,对开发者不透明,加注释成为负担,交流平白增加无数。
4.调试程序烦琐。在XP叫嚣的今天,轻量级的开发方式横行的现在,脱离容器测试调试代码成为EJB3.0到处宣扬口号的如今,调试测试OFBIZ代码依然需要启动容器,让人在痛苦和挣扎中,如何能青睐OFBIZ,而缺少了开发者的支持,OFBIZ的明天又能走向那里呢?
如此多的问题,我在项目究竟该不该用它,怎么用它呢?我曾一度沉溺无数困惑和痛苦的抉择中。
2003,Tom Siebel的“CRM之死”,曾击起千层浪。我想他无非是说通用的CRM软件已经没有多大市场了,无法很快响应用户需求的改变吧。
OFBIZ,这个最大的通用开源的business软件,难道就能逃过“CRM之死”吗?我一直在考虑,通用的business的软件真的能通用吗?如果真的可以,那么所有的这些CRM,SCM,ERP就应该是叫一种软件了吧。如果真的能做到,我也绝对不相信凭两个人能完成。
都知道,business上的逻辑是环环相扣的,稍有不同,一环脱落,后面全都用。即使是同一类型的企业,操作上都会小差别,如何应对小差别,软件的架构将起到决定性的作用。而OFBIZ过于沉溺于所谓业务逻辑的处理,整个架构不具备柔韧性和可扩展性,无法应对变化。
20年前,布鲁克斯在其《人月神话》提出了一个迄今为止尚未被打破的著名论断:“没有一种单纯的技术或管理上的进步,能够独立地承诺在10年内大幅度地提高软件的生产率、可靠性和简洁性”。20年中,无数人提出了无数的思想和方法论,OOA/OOD/OOP、AOP,CMM、XP,IOC,还有程序员最讨厌的软件工厂等等。20年过去了,软件业没有迎来汽车装配业的流水性作业,项目超期,费用过高,客户失望,员工丧气,举起的无数被誉为银弹的利器,没能击到人狼,反而陷在焦油坑中苦苦挣扎。、
绝望中的人们最喜欢的就是抓住一根根最后的稻草。OFBIZ,这个号称开源的SAP,号称无数逻辑可以重用的稻草,绚丽的辞藻中确实可以让人忘记前辈的循循教导,绝望中的人是最容易看到美丽的海似层楼。
但是幻影终究是幻影,回首项目,著名论断“没有银弹”成了最好的注脚。
而OFBIZ巨大的弱点几乎使之成为令一个狼人,巨大的偶合,烦琐的调试,庞大的souce code,与需求的巨大出入,使之成为鸡肋,死死缠住你前进的步伐,稍有不慎,吞噬你,毁灭你而只是眨眼的灰飞湮灭啊!
OFBIZ真的就是毫无用处了吗?记得我说的,谁说的不好,我跟他急。
如果你的公司有实力,能投入人花很长的时间研究它(我相绝大多数公司不会,不能赚钱的长期投入不是谁都能做的,而真正的大公司,要研究谁会研究你一个OFBIZ呢),所以仅仅是个人兴趣去研究吧!
如果你没有长时间的研究过,你想在项目中作为银弹使用OFBIZ,如果你没有足够的准备,如果你不足够优秀,请不要尝试,请相信“没有银弹”,至少现在。
如果你是计算机企业级软件的新手,急于学习,请选择OFBIZ,不论是架构还是业务,你都将获益非浅!
如果你是程序员,不要向你的经理提起OFBIZ,人人 都将“没有银弹”示为经典,但是没有几个人能真正去体会,当项目压力来时,不会在有人理会这个!
分享到:
相关推荐
**OFBiz Nutshell: 深入理解Open for Business** OFBiz,全称为Open for Business Project,是一个开源的企业级应用套件,旨在提供全面的业务自动化解决方案。它由Apache软件基金会维护,支持多种业务功能,如电子...
Apache OFBiz是一种开源的电子商务解决方案,其全称为Open For Business。它是一个功能强大的企业级电子商务平台,能够在组织内部构建稳健的电子商业系统。本文档涵盖的内容以OFBiz 9.04版本为核心,详细介绍了OFBiz...
OFBiz(Apache Open For Business)是一个开源框架,设计为帮助构建企业资源计划(ERP)软件。ERP是任何致力于整合所有业务处理及后台数据到一个系统的一个统称。实际上,OFBiz框架不仅帮助构建自定义软件,还打包有许多...
OFBiz全称为Open For Business Project,它是一个用于构建企业应用程序的全面业务解决方案,涵盖电子商务、供应链管理、客户关系管理等多个领域。 OFBiz是基于Java的,它提供了丰富的服务和组件,通过灵活的表结构...
Ofbiz,全称为The Open For Business Project,是一个开源的企业应用框架,主要由Apache软件基金会维护。这个项目旨在提供一套全面的、可扩展的企业级应用程序解决方案,涵盖了电子商务、供应链管理、客户关系管理等...
<description>Practice Component of the Open For Business Project <!-- ...其他配置... --> ``` 而`controller.xml`文件则定义了Ofbiz如何处理HTTP请求。例如,你可以在这里配置URL映射和控制器类。 至此,...
Ofbiz(Open For Business)是一款开源的企业级商务应用框架,旨在提供一套全面的解决方案,支持各种类型的业务需求,尤其是电子商务领域。该框架集成了众多优秀的开源项目和技术,如Tomcat、Ant、BeanShell、JBoss...
在信息技术领域,OFBiz(Open For Business Project)是一个开源的企业级应用框架,主要用于构建复杂的电子商务系统。OFBiz 提供了一整套全面的业务组件,涵盖了从供应链管理到客户关系管理的诸多方面。本文将深入...
《OFBIZ开发指南》是一本专为开发者设计的详细教程,主要针对OFBIZ(Open For Business Project)这一开源企业应用平台。OFBIZ是一个基于Java的企业级应用框架,旨在提供一系列完整的业务功能,包括供应链管理、电子...
OfBiz,全称为The Apache Open For Business Project,是一个开源的企业应用套件,旨在为企业提供一套完整的业务自动化解决方案。这个项目由Apache软件基金会维护,遵循Apache 2.0许可证,因此它不仅免费,而且拥有...
Ofbiz,全称Open For Business Project,是一个开源的企业级应用框架,主要用于构建复杂的业务应用程序。它提供了全面的业务组件,包括库存管理、订单处理、客户服务等,为企业信息化提供了一站式解决方案。 在...
- **定义**:Apache OFBiz(Open For Business)是一款开源的企业级应用框架,它集成了ERP(企业资源规划)、CRM(客户关系管理)以及E-commerce(电子商务)等多种功能。其设计目标是为了提供一个灵活且可扩展的...
OFBiz,全称Open For Business Project,是一个开源的企业级应用框架,专注于电子商务和业务流程管理。OFBiz旨在提供一个全面、可扩展且灵活的解决方案,适用于各种规模的企业。本篇文章将带你快速入门OFBiz的开发...
OFBiz(Open For Business Project)是一个完整的业务应用程序套件,由Apache软件基金会维护。它涵盖了一系列企业运营所需的功能,如订单处理、库存管理、财务管理、客户服务等。OFBiz采用服务组件架构(Service ...
Ofbiz,全称Open For Business Project,是一个开源的企业级应用框架,主要用于构建复杂的电子商务和企业管理系统。它基于Java技术,提供了丰富的组件模型和灵活的业务流程,使得开发者能够快速搭建并扩展业务系统。...
OFBiz,全称为Open For Business Project,是一个开源的企业级应用框架,主要用于构建和管理电子商务、供应链管理、客户关系管理等业务系统。OFBiz的数据结构设计是其核心组成部分,它直接影响到系统的性能、可扩展...
ofbiz数据模型中文手册详细介绍了OFBiz(Open For Business)项目的数据模型结构,它是用Apache License发布的开源电子商务套件的一部分。在OFBiz项目中,数据模型是其业务逻辑的基础,其中定义了大量的数据库表以及...
OFBiz,全称Open For Business Project,是一个开源的企业级应用框架,专注于电子商务、供应链管理和企业资源规划(ERP)等业务场景。本文将深入探讨OFBiz中的核心设计模式——Model-View-Controller(MVC),以及它...
OFBiz(Open For Business Project)是一个全面的企业级业务应用程序框架,它由Java语言编写,提供了一系列的服务、组件和工具,用于构建和管理电子商务、供应链管理、客户关系管理等多种业务应用。 OFBiz的核心...