The Go Programming Language
› http://golang.org/
› Go Playground
Go Projects
› Revel Web Framework
fushall

做了六七年 Python ,最近被调到 Go 项目组,求推荐一波类似《流畅的 Python 》的学习资料

  •  
  •   fushall · Jul 30, 2025 · 6506 views
    This topic created in 467 days ago, the information mentioned may be changed or developed.

    用了很多很多年 Python ,转到 Go 项目很多地方不适应
    (虽然借助 AI 可以开发了,但是还是很难受)

    无奈,Python 虽然喜欢,但是吃饭还得跟着公司走,想着系统学习一下 golang

    楼主看过很多 Python 相关的书,比如 cosmic Python ,TDD Python ,流畅的 Python ,健壮 Python ,Python 91 个建议,python cookbook 等等

    golang 只看过一本黑色的《 Go 程序设计语言》

    求各位推荐一波资料:

    26 replies  •  2025-08-20 19:37:07 +08:00
    jarytom
    jarytom
    Jul 30, 2025
    1
    从不喜欢看书,都是看下要用的框架的文档
    gimp
    gimp
    Jul 30, 2025❤️1
    2
    1. 《 100 个 Go 语言典型错误》,英文版是 《 100 Go Mistakes How to Avoid Them 》
    2. Uber Go Style Guide: https://github.com/uber-go/guide/blob/master/style.md 也有对应的中文翻译版本
    lululau
    lululau
    Jul 30, 2025
    3
    学习学习
    dog82
    dog82
    Jul 30, 2025
    4
    Go 程序设计语言 非常好,但是翻译得很差,英文阅读没问题的看原版吧。
    我在图书馆借了本叫《 Go 语言之路》作者李文周,写得还不错,思路很清晰,但是比较基础,推荐看看
    dog82
    dog82
    Jul 30, 2025
    5
    李文周的博客: https://liwenzhou.com
    charmToby
    charmToby
    Jul 30, 2025
    6
    这个我感觉还不错 https://draven.co/golang/
    maocat
    maocat
    Jul 30, 2025
    7
    大可不必,找一些开源项目/多看看公司项目的代码,对齐就行

    python 能出这么多书,自身和语言特性/语法糖有关,动态类型,包/模块管理,magic function ,metaclass 等等都导致了 python 的复杂性

    之前做项目,组里也有其他语言转来的同事(node, c#), 写 go 入参出参都是 map[string]any ,稍微一复杂的业务,好几个 map 在代码里跑来跑去,而且指针一点都不用,遍历切片结构体修改值,却不重新塞回去,这种问题层出不穷,苦不堪言
    fushall
    fushall
    OP
    Jul 30, 2025
    8
    @maocat 看哭了,昨日天刚被 for range “遍历切片结构体修改值,却不重新塞回去” 坑了
    fffq
    fffq
    Jul 30, 2025
    9
    楼主看过很多 Python 相关的书,比如 cosmic Python ,TDD Python ,流畅的 Python ,健壮 Python ,Python 91 个建议,python cookbook 等等
    rahuahua
    rahuahua
    Jul 30, 2025
    10
    @maocat 之前做项目,组里也有其他语言转来的同事(node, c#), 写 go 入参出参都是 map[string]any
    rahuahua
    rahuahua
    Jul 30, 2025
    11
    @maocat @maocat 之前做项目,组里也有其他语言转来的同事(node, c#), 写 go 入参出参都是 map[string]any
    这要是在我组,第二天就可以走人了,囧
    46fo
    46fo
    Jul 30, 2025
    12
    FarmerChillax
    FarmerChillax
    Jul 30, 2025
    13
    全本推荐: https://book.douban.com/subject/35144587/
    部分篇幅推荐: https://book.douban.com/subject/30351288/

    其他书籍可以看我的阅读清单,里面有具体的评价: https://blog.farmer233.top/readings/
    Michael88
    Michael88
    Jul 30, 2025
    14
    直接让大模型教你。
    sthwrong
    sthwrong
    Jul 30, 2025
    15
    @maocat #7 别说了,搞 java 的也有爱 map,hashMap 的做返回值的,所有代码都追求正常场景能出结果就行,异常场景出了问题再改。结果就是被开了之后一直在填他的坑。
    ohoh
    ohoh
    Jul 30, 2025
    16
    如果是 go 的话,唯一推荐的是 雨痕 的 Go 语言学习笔记
    Reficul
    Reficul
    Jul 30, 2025
    17
    @maocat 可以试试看加一些 Lint ,让 CI 系统替你打人
    billzhuang
    billzhuang
    Jul 30, 2025 via iPhone
    18
    《流畅的 python 》是不可多得的好书
    justyoung
    justyoung
    Jul 30, 2025
    19
    最近也在学 Go , 感觉官方文档里的 Effective Go 还不错: https://golang.google.cn/doc/effective_go
    另外可以尝试用 Python 先写部分代码,然后让 AI 翻译成 Go ,这样就能快速感受到两者的异同点。
    spritecn
    spritecn
    Jul 30, 2025
    20
    我是写 java 的,最近在看 惯例模式与编程实践 ,vibe coding 在 go 上面就很流畅
    lveye
    lveye
    Jul 30, 2025
    21
    可以试试 O'Reilly 出品的《 Head First Go 》
    iorilu
    iorilu
    Jul 30, 2025
    22
    求推下类似的 rust 书

    我看了部分官方 the rust book, 不过一阵子不玩又忘光了
    AEnjoyable
    AEnjoyable
    Jul 30, 2025 via Android
    23
    可恶啊😭 我司把我从 go/rust 转成了 Python
    。。。
    Miranquil
    Miranquil
    Aug 5, 2025
    24
    @iorilu Rust 官方那个文档目前没有能打的。
    所谓的那个 Rust 语言圣经写的太肤浅了。
    sharper
    sharper
    Aug 8, 2025
    25
    @rahuahua #10 这不是我前司嘛,参数传 map ,改改加加直接无值返回,还好没遇到过扩容的情况
    rahuahua
    rahuahua
    Aug 20, 2025
    26
    @starck 哈哈哈,你前司是哪家
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   922 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 56ms · UTC 20:49 · PVG 04:49 · LAX 12:49 · JFK 15:49
    ♥ Do have faith in what you're doing.