V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xiaottt
V2EX  ›  程序员

关于 go 语言选型的问题

  •  
  •   xiaottt · 2018 年 7 月 27 日 · 5928 次点击
    这是一个创建于 2732 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大家好。
    公司可能部分业务要慢慢用 go 来搞了,之前 C++攒了好多库和自己的轮子,用久了也挺可靠的,但是 go 一点也不熟悉。虽然说语法简单,上手容易,但是大量的第三方库也不知道该如何选型。
    请熟悉的大佬推荐一下,少踩点雷。

    谢谢。

    Http(除了 go 自带,有没有更好的)
    RPC
    MQ(比如 RabbitMQ)
    MySQL
    Redis
    log
    Json XML
    SSL

    21 条回复    2018-07-28 16:27:25 +08:00
    reus
        2
    reus  
       2018 年 7 月 27 日
    https://godoc.org/

    选搜出来的第一个
    Narcissu5
        3
    Narcissu5  
       2018 年 7 月 27 日   ❤️ 4
    我就想知道为什么这么多公司对 go 一无所知还敢转过去,因为流行么
    saberpowermo
        4
    saberpowermo  
       2018 年 7 月 27 日 via Android
    @Narcissu5 赞同。。。
    fatedier
        5
    fatedier  
       2018 年 7 月 27 日
    @Narcissu5 必然是因为有一些吸引人的特性,期望换成 Go 后在某些方面能有改善,流行的话为什么不选 java。
    nullen
        6
    nullen  
       2018 年 7 月 27 日
    第三方库的选型策略:去找知名的 Go 项目,看看里面引用的是什么类库。
    gowk
        7
    gowk  
       2018 年 7 月 27 日   ❤️ 2
    能不用 orm 就不用 orm,避免不必要的复杂性
    sqlx 加一个 sql builder 足矣,可以考虑滴滴的 gendry,或者自己造轮子
    http 随大流选择 gin 吧
    log 可以考虑 uber 的 zap
    rpc 选择标准的 grpc 吧
    Narcissu5
        8
    Narcissu5  
       2018 年 7 月 27 日
    @fatedier
    第一:java 不潮,干久了才发现编程也是个赶流行的行业,比如 jquery 在很多需求面前仍然是最好的工具,但这年头你都不好意思说自己前端是用 jquery 写的
    第二:java 积累了这么多年,每个三五年升不到高级开发,go 一两年就可以了,毕竟新语言,没有那么多老鸟压在头上
    gowk
        9
    gowk  
       2018 年 7 月 27 日
    @Narcissu5 我想是因为 Go 简单,代码已读,熟悉 Java 或其语言的可以快速上手,但你可能要问直接用 Java 就好了,干嘛要换 Go,Java 刚出来的时候别人也是这么想的。软件行业在发展,编程语言也在发展,总会出来新的东西来替换旧的东西,这就是历史发展的自然规律
    askfilm
        10
    askfilm  
       2018 年 7 月 27 日
    @Narcissu5 我也赞同, 我认为应该用最稳定,最熟悉的东西, 尤其对工作上的开发, 这是一种负责。 再说了新东西不一定是好东西, 会过多消耗公司资源, 自己和团队的精力! 尤其可以拖慢公司的业务速度, 是中小公司大忌!
    askfilm
        11
    askfilm  
       2018 年 7 月 27 日
    大公司就喜欢搞出来一些新玩意,来折腾中小公司, 玩腻了就扔了 (个人观点)
    fuxiaohei
        12
    fuxiaohei  
       2018 年 7 月 27 日
    既然是慢慢用 go 搞,可以从边缘业务、小工具层面做起,体验一下各种库好了。少踩雷是想得美。
    rrfeng
        13
    rrfeng  
       2018 年 7 月 27 日 via Android
    楼上几位说的都对
    但我认为本质的问题是,楼主提出来的这个问题本应该自己通过搜索、分析、源码阅读等判断得到结论。如果只想到来问,那么一定转型不顺利。
    owenliang
        14
    owenliang  
       2018 年 7 月 27 日
    尽量不用第三方库,如果用非得用就用吧,我是没碰过什么问题。
    notreami
        15
    notreami  
       2018 年 7 月 27 日
    @gowk 这个布道,是在太低劣了。rust 比 go 新,要不把 go 扔了吧。软件行业在发展,编程语言也在发展,总会出来新的东西来替换旧的东西,这就是历史发展的自然规律
    mengzhuo
        16
    mengzhuo  
       2018 年 7 月 27 日
    >> 之前 C++攒了好多库和自己的轮子

    难道是我厂……
    prondtoo
        17
    prondtoo  
       2018 年 7 月 27 日
    https://gokit.io/
    微服务全家桶啊,再上 K8S 部署。
    y835L9DyC5XD09kq
        18
    y835L9DyC5XD09kq  
       2018 年 7 月 27 日
    github 上有个叫 awesome-go 的项目,推荐看下
    zhangtao
        19
    zhangtao  
       2018 年 7 月 27 日
    @gowk 握个抓,跟我的选型基本一致
    tianzx
        20
    tianzx  
    PRO
       2018 年 7 月 27 日 via Android
    mark
    tt67wq
        21
    tt67wq  
       2018 年 7 月 28 日
    我司的 webframework 用的 beego,感觉轻重比较适中,其他的没用过
    orm 是主程自己撸的。。。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2394 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 01:33 · PVG 09:33 · LAX 17:33 · JFK 20:33
    ♥ Do have faith in what you're doing.