golang构建函数
2017-12-25 11:56
113 查看
写代码注意事项
软件是信息流,依靠数据驱动
5.I/O
软件是信息流,依靠数据驱动
1. 输入数据 参数
函数名+request 方便扩展,见名知意 参数合法性检查
2.输出参数
函数名+responsetype CheckHitResponseData struct { Fish []*CheckHitFish `json:"fish"` Sum float64 `json:"sum"` } type CheckHitResponse struct { Code int `json:"code"` Msg string `json:"msg"` Data CheckHitResponseData `json:"data"` }
3. 返回值
err 为空正常 否则为异常(定义返回码)func (psh *PushImpl) UserJoin(request *push.PushUserJoinRequest, response *push.PushUserJoinResponse) (err error) { return }
4. 异常的处理:
errors.go 定义各种error 异常退出时 删除添加的数据、缓存、关闭数据连接、打开的文件、释放锁
5.I/O
操作的全局变量、缓存、对外提供的服务、send/receive 的message
6. 锁的使用
非递归的锁不能重复加锁,否则会死锁
相关文章推荐
- docker(8):使用alpinelinux 构建 golang http 看看能有多小
- 廖威雄: 利用__attribute__((section()))构建初始化函数表与Linux内核init的实现
- golang 理解 reflect包 函数 ValueOf, Value.Set
- 利用__attribute__((section()))构建初始化函数表【转】
- golang学习之旅:方法、函数使用心得
- Golang构建简单web框架
- golang数据类型在函数中传值或传址的整理
- Golang教程之不可重入函数的实现方法
- Golang初学者对函数返回值还是指针的测试
- 使用函数计算来构建小程序
- golang好用的延时函数
- golang 函数以及函数和方法的区别
- golang 之 defer(统计函数执行时间)
- 构建“.NET研究” View 时可能用到的代理函数调用顺序
- __direct_map 函数解析之影子页表的构建
- Golang面向过程编程-函数
- 使用gulp构建nodejs,你只需要记住5个函数
- Golang初级系列教程-函数多个返回值
- 基于golang从头开始构建基于docker的微服务实战笔记
- 使用Golang快速构建WEB应用