# egg体系

Egg.js官方的定位是为企业级框架和应用而生孕育出更多上层框架,帮助开发团队人员降低开发和维护成本。

从Egg.js目前的定位和现有的生态周边,我们可以分成以下三个体系:

  • 核心体系
  • 辅助体系
  • 生态体系

# 核心体系

顾名思义就是egg的核心能例,其实Egg的核心就只有一盒模块egg-core模块,虽然egg-core模块代码有十几个文件,但是核心思想可以抽象出一下两点:

  • 以koa.js为基类,利用了其中间件机制HTTP服务机制作为框架基础
  • Loader机制作为Egg各分层机制的约定基础

# 辅助体系

就是再开发和生产过程中,提供相关的支持能力,例如脚手架初始化、开发热更新、开发热部署、多线程使用和多线程守护等能力支持。在目前官方提供的辅助体系中,这里主要讲解的是以下几个能力

  • 开发模式支持
  • 生产模式支持
  • 多线程利用
  • 主要涉及的模块有egg-script、egg-bin等

# 生态体系

一个好框架必备的条件有两个,其一是友好的开发体验,其二是生机勃勃的生态体系。目前来讲Egg.js做的更出色的是友好的开发体验,也就是说该框架的约定是很友好的

目前Egg生态分约定以下三种类型

  • 中间件
  • 插件
  • 框架