最佳实践

Coding After 100+ Bugs

今年接手了一个新项目,不算vendor包,大概6W行代码,接的时候信心满满准备大干一场。结果半年内线上出了100多个bug。 粗糙统计下,80

Go项目在组织启动代码上的一次尝试

最开始的项目目录 $ tree . ├── ./api/ ├── ./service/ ├── ./dao/ ├── ./model/ ├── main.go func main(){ flag.Parse() artemis := NewArtemis(flag.String(`config`)) // artemis 是我们的框架,类似beego log.init() service.init() dao.init() worker.init() api.Route(artemis.Router) artemis.Run() } 写个测试吧 packege dao func TestGetNote(t *testing.T){

当我们在说浮点数精度不准的时候,到底在说什么

原以为浮点数是计算机编程的基础知识,后来发现个奇怪的现象:很多人都说浮点很坑,千万不要用,至于为什么却说不出个所以然。更有甚者,以专业民科的

Go 里减少空指针异常的小经验

原文地址:https://romatic.net/post/avoid_npe_in_go/ 空指针异常 NPE 在所有编程语言里都是个很麻烦的事情,

Go Module 实践中的问题(持续更新)

项目逐渐都切到了 go mod,用的时候遇到了各种奇奇怪怪的坑,记录一下。 流程实践 语义化版本 Go mod 在设计时没有支持诸如 >2.0, ~3.4, ^4.0 这样场景的语法。而是以语