摘要: 原文链接 https://dave.cheney.net/2016/04/27/dont-just-check-errors-handle-them-gracefully 翻译总结下Dave主要分享的几个观点: 避免前哨式的错误处理,因为一些错误处理而引入大量的包,比如下main这种,如果我们处理一 阅读全文
posted @ 2020-04-28 20:26 zhangyu63 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 这也是一种设计模式,简单的例子就是你对一个接口的设计在第一次真的能一应俱全吗?后期不会多参数等的调整吗? 错误的例子,下面的例子每次加参数都十分痛苦。 // package db func Connect( addr string, timeout time.Duration, caching bo 阅读全文
posted @ 2020-04-28 16:48 zhangyu63 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 本质上还是指针和值的概念区分。主要看一下golang的官方解释建议即可。Go不会过度限制你,但是也会适当的限制你。 https://github.com/golang/go/wiki/CodeReviewComments#receiver-type https://maiyang.me/post/2 阅读全文
posted @ 2020-04-28 11:34 zhangyu63 阅读(529) 评论(0) 推荐(0) 编辑
摘要: 虽然都讲编码规范,但是有规范的公司不多,我觉得这虽然花时间,但是是值得制定的,既然都不想制定,那学习大公司的规范也不错。换句话说,能遵守大公司规范就不错了。 https://github.com/uber-go/guide/blob/master/style.md 先说一句观点,规范是需要十分熟悉编 阅读全文
posted @ 2020-04-28 11:10 zhangyu63 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 翻译自 https://the-zen-of-go.netlify.app/ Dave Cheney在YouTube也有这次演讲的视频。 每个包实现单一目的精心设计的Go软件包提供了一个单一的想法,以及一系列相关的行为。一个好的Go软件包首先选择一个好名字。您可以将包裹的名称想像成一个升降梯,用一个 阅读全文
posted @ 2020-04-28 10:10 zhangyu63 阅读(246) 评论(0) 推荐(0) 编辑
摘要: link http://choly.ca/post/go-json-marshalling/ https://zhuanlan.zhihu.com/p/27472716 玩法还是蛮多的,如果能理解反射就好了。我们不能每次为了特定json返回而改原始的struct,我们直接从出口入手。 type My 阅读全文
posted @ 2020-04-28 09:54 zhangyu63 阅读(334) 评论(0) 推荐(0) 编辑