QtCreator插件开发(三)——QtCreator架构
QtCreator插件开发(三)——QtCreator架构 一、QtCreator架构简介 QtCreator的核心就是一个插件加载器,其所有功能都是通过插件实现的。 QtCreator架构如下: QtCreator的核心功能由Core Plugin (Core::ICore)实现。 插件管理器(ExtensionSystem::PluginManager)对插件协作提供了简单方式,允许插件为其他插件扩展提供钩子。 PluginManager负责插件的加载,管理,销毁等工作。Core插件是QtCreator最基础的插件,提供了向界面增加菜单等功能。 QtCreator的核心系统是由PluginManager和Core插件构成。PluginManager负责插件的管理工作,Core负责提供QtCreator的最小功能集合。PluginManager将Core当做普通插件进行加载。对于自定义插件,Core是一个基础功能库,使用Core可以扩展QtCreator的功能。 QtCreator的所有功能,全是由插件实现的,使用插件机制的优点是简化了顶层业务,即插件管理工作的逻辑,缺点是增加了加载插件的复杂度,由于Core插件需要被其他插件依赖,所以qtcreator在插件加载时就必须要考虑插件之间的依赖性。 二、插件模块 1、插件模块 最基本的插件是一个共享库,从开发者的角度,插件是一个模块