浅析ODOO框架+Python与其它自主ERP+JAVA的优势对比

Java和Python现在都是世界排名前三的语言,关于两门语言的特性,可以说有很多相似的地方,但也有很多本质上的不同。

那么这两种语言比较,我们要选哪种呢?

答案很简单,没有更好,只有更适合。作为我们,"人生苦短,我用Python"。所以说下我们的选择逻辑,主要针对erp及门户平台建设。

 

技术是服务于业务实现的工具。各种技术各有优势,关键在于更快更好实现业务需求。

  JAVA+厂商自主开发ERP Python + OdooERP框架
基础框架 JAVA曾经是现在也是最多人使用的编程语言。

体系庞大,功能强大,是最基础的开发工具,可实现各种功能。不足在于,需要的开发量比较大,耗时长久。

尚鹏技术团队大部分亦曾经是JAVA程序员,现在已经远离,感觉"脱离苦海"。

格言:

人生苦短,我用Python

Python在2018年5月成为#1的开发语言,现在基本是#2,#3徘徊,在Google/Facebook/BAT都是主流开发语言。

Python有悠久的历史,其思想是将主要功能已开发成通用模块,积木化按需组合。近年随着新技术如人工智能/区块链/物联网的发展而愈加蓬勃。

成熟度 取决于开发团队的成熟度。erp行业碎片化。 20多年企业管理思想的沉淀,erp及层面积累了全球5百万使用者的多年经验,形成了业务规范。
开放性 多数JAVA开发公司只提供编译后的软件,企业被绑定。

如金蝶用友,如果要增加业务需求,必须等供应商更新版本。

原生Python只可开源,企业全程可控,长期自由选择供应商。

可随需应变开发实施,前提是做好代码的版本管理。

实施速度 自主Erp,采用厂商的自主开发。

核心系统功能及扩展取决于开发团队的能力和规范。不一定能完全按照标准化进行开发,前期速度较快,但后期维护依赖性很强。

开放性Erp,全球海量开发者共同合作的产品。光第三方企业应用就在3万个以上。

采用长期积累形成的标准化模式。大量现成的模块,按照客户需求可快速搭建和投入使用。开箱即用

用户/开发者前端 要求开发和维护团队对JAVA等开发工具有较深的理解,专业性强 采用界面拖拉式快速借助成熟模块积木式搭建,学习成本低,无需太多的底层技术知识。大量使用java script
跨平台/跨终端能力 需要根据不同的操作系统和使用终端开发不同的版本 采用B/S架构,支持各主流操作系统和浏览器,自动适应电脑和手机使用,支持移动化业务处理
功能丰富度 依赖原开发团队的投入和能力,功能在细分行业比较完善。但新功能和业务延展都需要从头定制开发 历经十多年,官方千人团队,社区数万人的开发积累,自带功能非常完善,并在各行业,包括金融行业软银,汽车行业丰田福特,国内的宝马广本吉利等超大型企业都在使用。
长期发展的支撑 需要长期依赖原开发团队,自建团队成本高。不同的团队开发风格不统一,其它团队接手维护困难,往往采用重写才能接手 所有的模块都采用统一标准,可获得的支持团队很多,内部培养的人员也很容易延续和接手。

odoo最核心的是其不仅有开发规范,还有业务规范,优点是开发团队高兼容性和高标准化,不足是培养成本高,开发前必须熟悉odoo的业务逻辑。

二次开发能力 所有修改都需要开发团队参与 内嵌网站生成、报表系统、工作流管理、邮箱、IM等协同工具,不具备技术能力的人员可以快速实现定制化。

划重点!开发人员必须熟悉行业业务,这点成本很高,但也是erp必需!

云体系支撑 大多数系统都只支持公司内部使用,云架构的Saas服务开放给合作方需要单独开发 Odoo架构支持云部署和Saas模式,上下游连接和整合非常便捷
应用架构 各开发的模块通常是紧耦合方式,一部分的开发可能引发大量相关模块的修改 采用标准化插件式的架构,各模块开发不会对核心系统带来影响
odoo16及以下版本如何自动计算产品成本 并自动生成产品销售收入成本毛利报表