共计 1347 个字符,预计需要花费 4 分钟才能阅读完成。
大家好,我是煎鱼。
作为一个 Go 语言开发工程师,总是在入门、深刻、撕提案时可能听到各种带有 Go 特色的话语,例如:少即是多(less is more),十分乏味。
明天带来了 Go 语言之父 Rob Pike 在 2015 年分享的主题《Go Proverbs》,他在该主题中讲了的 10+ 条 Go 谚语,心愿大家能够用上。
核心理念是:简略、诗意、简洁(Simple, Poetic, Pithy)。
谚语
- 不要通过共享内存来通信,通过通信来共享内存(Don’t communicate by sharing memory, share memory by communicating)。
- 并发不是并行(Concurrency is not parallelism)。
- 通道是协调的,互斥是串行的(Channels orchestrate; mutexes serialize)。
- 接口越大,抽象性越弱(The bigger the interface, the weaker the abstraction)。
- 让零值变得有用(Make the zero value useful)。
- interface{} 什么也没说(interface{} says nothing)。
- Gofmt 的格调没有人喜爱,但 Gofmt 却是大家的最爱(Gofmt’s style is no one’s favorite, yet gofmt is everyone’s favorite)。
- 复制一点总比依赖一点好(A little copying is better than a little dependency)。
- Syscall 必须始终用 build 标签来爱护(Syscall must always be guarded with build tags)。
- Cgo 必须始终用构建标签来爱护(Cgo must always be guarded with build tags)。
- Cgo 不是 Go(Cgo is not Go)。
- 应用 unsafe 包没有任何保障(With the unsafe package there are no guarantees)。
- 清晰的比聪慧的好(Clear is better than clever)。
- 反射从来不是清晰的(Reflection is never clear)。
- 谬误就是价值(Errors are values)。
- 不要只是查看谬误,要优雅地解决它们(Don’t just check errors, handle them gracefully)。
- 设计架构,命名组件,记录细节(Design the architecture, name the components, document the details)。
- 文档是为用户筹备的(Documentation is for users)。
- 不要应用恐慌(Don’t panic)。
总结
Rob Pike 在演讲中所波及到的这 18 条谚语,是他长年在计算机软件畛域开发和设计 Go 时所积攒下来的教训。
心愿明天这篇文章可能对你有所帮忙:)
文章继续更新,能够微信搜【脑子进煎鱼了】浏览,本文 GitHub github.com/eddycjy/blog 已收录,学习 Go 语言能够看 Go 学习地图和路线,欢送 Star 催更。
举荐浏览
- Go 语言入门系列:初探 Go 我的项目实战
- Go 语言编程之旅:深刻用 Go 做我的项目
- Go 语言设计哲学:理解 Go 的为什么和设计思考
- Go 语言进阶之旅:进一步深刻 Go 源码
正文完