设计哲学
以结果为导向,实用为目标,在架构设计上,我们主要追求通用、简捷、灵活,致力于为开发者提供高效且易用的开发体验。
- 通用:指尽可能使用主流的,官方的,已被大量采用或认可的技术栈和实现方式,以避免不必要的学习成本。
- 简捷:简单和快捷。指保持代码和结构的简单,在使用上快捷。尽可能降低心智负担,避免过度设计和不必要的抽象。专注于业务逻辑实现,减少重复性代码内容。
- 灵活:我们在通用、简捷的基础上提供约定和最佳实践,这是非侵入式的,由于我们并不以某些设计模式或开发习惯为目标,开发者不需要受其限制。
Note
任何设计模式都不是我们追求的目标,但都是我们实现目标的手段。
避免的做法
在设计和实现过程中,以下做法是我们不采用的:
- 以某个或某几个设计模式为依据,确定项目结构和技术栈。
- 过度抽象,增加复杂度,从而降低开发体验。
- 过度封装,从而降低灵活度,增加学习和维护成本。
- 对第三方包进行特殊封装,不再通用,且增加心智负担。