可否直接修改CabloyJS核心模块的源码,达到二次开发的目的?

CabloyJS采用对扩展开放,对修改关闭的开闭原则。针对业务开发的场景,CabloyJS提供了相应的功能和特性,达到开箱即用的效果,同时也提供了大量的扩展机制,方便二次开发和定制

扩展说明(1):模版框架的区别

  • 模版:有许多框架,其本质是代码模版,比如市面上大多数Admin模版中后台管理模版。当开发具体项目时,直接在代码模版中修改代码。这样,虽然修改起来很直接,但是不利于模版的持续升级和优化;也不利于业务代码的持续沉淀和迁移(比如再开发其他新的项目)。因此,当把代码模版从源码仓库下载下来之后,修改三分之一,增加三分之一,删减三分之一,从此就与代码模版的后续升级版本绝缘了

  • 框架:一个真正成熟的框架,对扩展开放,对修改关闭的开闭原则是首要考虑的架构原则。既方便框架的持续升级和优化,也方便业务代码的持续沉淀和迁移(至其他项目)

扩展说明(2):Module Monkey

为了实现对扩展开放,对修改关闭的开闭原则,CabloyJS从不同的维度思考可以扩展的方式。对于不同的功能,CabloyJS针对功能的特点提供了相应的扩展机制。除此之外,还提供了Module Monkey机制,可以深度替换所有模块的前端和后端组件,实现高度的定制开发(二次开发)。Module Monkey机制一般不轻易使用,是最后的大招。请参见:Module Monkey