Skip to content

Latest commit

 

History

History
55 lines (31 loc) · 1.24 KB

规范-代码框架.md

File metadata and controls

55 lines (31 loc) · 1.24 KB

代码框架

go-xserver 严格区分框架层与逻辑层

go-xserver 加载逻辑插件的方式运行

框架层

主要交付内容如下:

  • go-xserver 可执行文件
    • go-xserver 是入口程序,会加载逻辑插件,启动服务
  • github.com/fananchong/go-xserver/common 包
    • common 包都是接口文件,会尽力保持接口不变

逻辑层

使用框架的程序,按一定规范,制作一个插件,即可使用 go-xserver

代码分析

代码主要分布在 3 个目录:

  • services
  • common
  • internal

services 目录

本目录下的每个子目录都是一个例子服务或默认服务

它会用 common 目录中的一些公共代码、接口

internal 目录在不在都不会影响 services 目录中代码的编译、运行

即 internal 目录可以对 services 目录不可见

common 目录

通常为 interface 接口声明为主,细节实现可以放入 internal 目录

其实现,会被编译进 go-xserver 程序内

internal 目录

框架层代码。可以对 services 目录不可见

例子参考

比如对 log 的封装代码: