/dew

对Spring Cloud/Boot的封装扩展、整合公司现有能力、提供最佳实践,做为基础服务框架,支撑公司新项目地研发。

Primary LanguageJavaApache License 2.0Apache-2.0

Dew-Framework

dew
Codacy code quality
Apache License 2

对Spring Cloud/Boot的封装扩展、整合公司现有能力、提供最佳实践,做为基础服务框架,支撑公司新项目地研发。

Dew [du:] 意为`露水`,希望此框架可以像晨间的露水一样透明、静谧、丰盈。让使用者尽量不要感知框架的存在,专注业务实现。

设计理念

服务框架的尴尬

几乎每个软件公司都会研发企业内部的服务框架以满足自身业务发展的需要,但几乎所有框架都会存在这样的尴尬:

  1. 无法传承,框架的研发人员离职后没有可以接手

  2. 上手难度大,很多框架喜欢重复造轮子,做出来的与业界主流**/标准格格不入,导致学习培训成本很高

  3. 功能片面,不通用,服务框架讲求通用性,尽量让整个公司使用同一套规范以方便维护,但很多框架只实现了某些特定场景的功能,无法通用化

  4. 维护成本高,尤其是对于完全自研的框架,往往需要专职人员维护

Dew架构**

上述问题是Dew框架必须面对的,应对的设计核心理念是:基于成熟框架扩展 ,具体要做到:

  1. 简单容易,用最通用的、标准的、开发人员都熟悉的开发模型

  2. 功能全面,尽量重用市场已有能力实现,减少框架自身的维护成本

  3. 轻量,原则上不引入高侵入性的三方框架/类库

  4. 可替换,只做扩展,尽量不修改基础框架代码,开发人员完全可以直接基于基础框架开发

实现上我们选择 Spring Boot/Cloud 这一业界主流框架。