找回密码
 会员注册
查看: 34|回复: 0

如何真正写好Golang代码

[复制链接]

2万

主题

0

回帖

6万

积分

超级版主

积分
64454
发表于 2024-9-21 00:10:57 | 显示全部楼层 |阅读模式
作者:eddison本文从设计、规范、陷阱到相关实现以例证说明并结合自己思考,详细解释了该如何写golang好代码。发表前作者已经详细校对,如本文有遗漏的错误请指出,带来的不便请谅解。Golang实现SOLID设计原则本章节按照设计模式中的核心设计原则介绍在Go语言中的实现。单一职责原则类的设计尽量做到只有一个原因引起变化。在交易的场景中,我们需要做一些交易存储、验证,我们可以声明交易的结构体,这个结构体是为了存储每笔交易。但是验证的功能我们可以拆开,这样代码更具有维护性、测试的编写也更简单方便。type Trade struct {    TradeID int    Symbol string    Quantity float64    rice float64}type TradeRepository struct {    db *sql.DB}func (tr *TradeRepository) Save(trade *Trade) error {    _, err := tr.db.Exec("INSERT INTO trades (trade_id, symbol, quantity, price) VALUES (?, ?, ?, ?)", trade.TradeID, trade.Symbol, trade.Quantity, trade.Price)    if err != nil {        return err    }    return nil}type TradeValidator struct {}func (tv *TradeValidator) Validate(trade *Trade) error {    if trade.Quantity 
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2024-12-27 14:20 , Processed in 0.703688 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表