Skip to content

agclqq/prow-framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

简介

本项目指在提供一个开箱即用的go开发环境。

在基础功能中,提供通用开发方式,使开发者精力专注于业务开发,预留扩展接口,方便功能扩展。

在项目指导中,提供DDD的开发指导,使开发者能够更好的理解DDD,并在实践中逐步掌握DDD的精髓。

目录结构

以下是目录结构和DDD四层结构的对应关系(因前后端分离,故不包含user interface layer)

|--application //对应 application layer,放的是controller
|--domain //对应 domain layer,放的是service
|--infrastructure //对应 infrastructure layer,放的是基础组件

实践指导

controller

  1. controller只能依赖下层,即domain,infra,但尽可能只依赖domain
  2. 每一个controller的方法,大体只负责三个步骤:
    • 检查参数
    • 调用domain逻辑并组装
    • 返回结果

domain

  1. domain允许同层依赖,但尽可能减少,不能向上依赖
  2. 每个domain,职责要单一,通过组合完成复杂功能

infra

  1. 每个infra独立完成一个功能,不依赖上层

开发规范

开发规范

安全规范

tips

开发tips

工具

artisan

artisan 介绍

组件

event

event 介绍