V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
hareandlion
V2EX  ›  Go 编程语言

Go Lang 新手请教,有哪些有意思的 Go 源码可以学习?

  •  
  •   hareandlion · 2018-12-26 20:26:12 +08:00 · 4579 次点击
    这是一个创建于 1919 天前的主题,其中的信息可能已经有所发展或是发生改变。

    RT.
    最近有闲,准备继续学习 Go。只是看完教程之后,不知改如何继续学习。
    有心在 Git 上找点项目学习,厚颜求推荐,附带链接就更好了。

    第 1 条附言  ·  2018-12-27 11:25:09 +08:00
    非常感谢各位,评论里的可以看一阵子了
    18 条回复    2019-01-29 08:57:01 +08:00
    kidlj
        1
    kidlj  
       2018-12-26 20:30:01 +08:00 via iPhone
    自顶向下学习,先用 gin 和 数据库 driver 写个 web。Go 的 web 框架都很简单,gin 就像是 nodejs 的 express。上手以后可以再去研究研究 gin 的源代码。
    hareandlion
        2
    hareandlion  
    OP
       2018-12-26 20:54:11 +08:00
    @kidlj 感觉 web 框架都是造轮子,其他语言也大都有成熟的方案,有必要吗?
    xrlin
        3
    xrlin  
       2018-12-26 21:03:42 +08:00 via iPad   ❤️ 1
    gin 的源码就挺好,看下 go 部分标准库源码也不错,或者自己写个解释器
    orangeade
        4
    orangeade  
       2018-12-26 21:40:17 +08:00 via Android
    看不少大佬啃 etcd 源码的
    askfermi
        5
    askfermi  
       2018-12-26 21:45:44 +08:00
    厚颜无耻地推荐最近自己写的轮子: http://github.com/unarxiv/cvpm/cli 也是刚刚开始学习 go 边学边写的... 主要是 Gin,写 web 应用、服务和 cli
    bonfy
        6
    bonfy  
       2018-12-26 22:25:20 +08:00 via iPhone   ❤️ 1
    瞅瞅這個? https://github.com/bonfy/go-mega 原生 go web 开发教程 加 源码
    trait
        7
    trait  
       2018-12-26 22:35:27 +08:00   ❤️ 2
    pingcap 的 tidb
    Vegetable
        8
    Vegetable  
       2018-12-26 23:40:21 +08:00 via Android   ❤️ 1
    go 的官方库都是 go 实现的,代码都在本地,我建议先挑常用的看看
    Allianzcortex
        9
    Allianzcortex  
       2018-12-27 00:12:06 +08:00
    @xrlin 我最近就在看 gin 0.1 版本的代码 https://github.com/gin-gonic/gin/tree/v0.1,只有五个文件非常轻。标准库也很好( D

    @trait 项目结构已经很复杂,分布式项目不容易在本地测试,并且牵扯到分布式数据库和 sql 解析这些领域知识,感觉难度有点大
    xrlin
        10
    xrlin  
       2018-12-27 09:49:10 +08:00
    @Allianzcortex gin 的第一版代码确实很简单,但是足够了解基本设计了,我也认为一开始没必要看大型项目的源码,耗时太长,太复杂难懂了。
    dany813
        11
    dany813  
       2018-12-27 10:44:02 +08:00
    先写点项目练手吧
    zichen
        12
    zichen  
       2018-12-27 10:53:33 +08:00
    像我这样上来就看 go-ethereum 的是不是比较奇葩……
    zicla
        13
    zicla  
       2018-12-27 11:12:40 +08:00
    我倒是有个比较有趣的 golang 项目,开源的云盘,最近准备发布 2.0 版本了。有空可以看看吧。https://github.com/eyebluecn/tank
    lolizeppelin
        14
    lolizeppelin  
       2018-12-27 11:36:25 +08:00
    k8s 啊 233
    lolizeppelin
        15
    lolizeppelin  
       2018-12-27 11:37:45 +08:00
    认真的说... 程序第一步要读配置文件的 可以先找 ini 库熟悉下反射
    有兴趣的话 json 库也可以看看
    mengzhuo
        16
    mengzhuo  
       2018-12-27 14:10:33 +08:00
    一般用户的话,推荐看 Go 标准库,代码规范,算法,细节实现都是标准
    flywithbug
        17
    flywithbug  
       2019-01-02 20:22:49 +08:00
    github.com/flywithbug/go_lesson
    从基础语法,到完成一个爬虫项目。。
    wo642436249
        18
    wo642436249  
       2019-01-29 08:57:01 +08:00
    @hareandlion 哈哈,做那些简单的项目确实是
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3356 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 13:38 · PVG 21:38 · LAX 06:38 · JFK 09:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.