一个Golang应用程序快速开发框架,有以下特性
- 快速开发
- 内置配置文件加载
YamlTomlJsonXML- 很方便定制自己的配置文件加载器
- 内置强大的数据验证
- 内置强大的且非常多的数据验证器
- 很方便的定制自己的数据验证器
- 强大的扩展功能
- 强大的配置功能
- 徽标
- 帮助信息
- 命令行
- 一切可配置点皆可配置
- 线程安全
- 内置依赖注入
- 语义化
- 方便使用
- 多态行为,同一个调用在不同的场景下有不同的意义
Pangu使用非常简单,只需要定义两部分代码启动方法和启动器以及依赖关系,对于依赖关系
- 可以没有依赖,如果没有,就不需要处理依赖
- 一般稍微大型一点的系统都会有复杂的依赖关系,而这正是
盘古框架的强项 - 对于没有依赖或者依赖非常少的项目,使用
盘古反而会使代码变多,这个需要大家酌情考虑
启动方法代码如下
package main import ( `github.com/pangum/pangu` `github.com/pangum/pangum` ) func main() { panic(pangu.New( pangu.Named(`ziyunix`), pangu.Banner(`Ziyunix Server`, pangu.BannerTypeAscii), ).Run(newBootstrap)) }启动器的代码如下
package main type bootstrap struct { application *pangu.Application } func newBootstrap(application *pangu.Application) pangu.Bootstrap { return &bootstrap{ application: application, } }依赖关系建议像如下处理
package rest import ( `github.com/pangum/pangu` ) type Server struct {} func newServer(/* 如果有依赖,可以在这里增加依赖:api *Api */) *Server { return new(Server) } func init() { pangu.New().Dependencies( newServer, // 其它依赖 // ... ) }
Pangu有非常多的配置项,请参看使用文档
- 基础项目实战代码
- 数据库操作
- 数据库迁移
- RESTFul接口
- 配置加载
- MQTT操作



