ThinkCMF5更加强调`核心化`,`应用化`,`模板化`,`插件化`,这4点贯穿了整个 cmf的开发过程,无论是 ThinkCMF官方团队成员,还是 ThinkCMF开发者都应该深入理解这4点概念. ## 核心化 (都是为了升级方便!) ThinkCMF一直以来都是遵循比较开放的开源协议,用户可以随意更改 ThinkCMF代码为自己所用,这一点对开发者来说是很自由的,但是这会导致你自己修改过的 ThinkCMF升级困难,为了避免这一问题,我们希望在使用 ThinkCMF过程中,尽量保持 ThinkCMF的代码不变.核心代码就让 ThinkCMF官方团队来维护吧! 同时为了让 ThinkCMF更完善,你应把自己想加的功能提交到[ ThinkCMF issue](https://github.com/thinkcmf/thinkcmf/issues) 里,同时到 官方VIP 群,或其他官方群@老猫.如果是 bug,你最好提交一个 github 的 PR,这样你也成为了 ThinkCMF的贡献者. ## 应用化 (生意做大时就增加应用吧) 应用是 ThinkCMF一个独立模块,它负责完成一个场景下的需求,如:电商应用,论坛应用,话题应用,问答应用等; cmf 核心包含了 `admin`,`user`及`asset`三个应用,`portal`应用是可以卸载的;用户可以根据自己的业务,开发适合自己的应用. 每个应用也会有自己的前台,后台,用户逻辑,所有的应用代码都应放到这个应用的目录下,而不能在放在`admin`,`user`应用下,这两个应用是核心应用,它们负责完成最基础的后台管理和用户管理. ## 模板化 (模板可以当产品销售了) 一个模板应该是可移植,用户不用改任何代码就可以使用的,它其实就是一个产品,可以批量销售;我们不再希望开发者开发出来的模板,用户需要改代码才能让用户设置成自己的数据,开发者可以通过模板变量和模板控件的方式定义用户可以更改的模板数据,让模板在后台可以设计; cmf 默认提供了一个简单的 bootstrap3的前台模板,稍后官方会开发出更多的模板,开发者也可以开发自己的模板放到官网的模板市场中销售; ThinkCMF不仅前台支持多模板,后台也可以支持多模板,如果你觉得默认提供的后台模板太 low,你也可以开发自己的后台模板! ## 插件化 (又是可以拿来卖的) 插件是一个灵活的系统扩展机制,它可以安装,卸载,启用和关闭;系统,应用和模板都有自己的插件钩子,用户可以下载安装各种插件,开发者也可以为这些插件钩子制作各种插件;插件同样也是一个小产品,开发者可以把自己的插件放到官方的插件市场上销售.