Golang 十年内有望成为第一语言吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
iConnect
V2EX    Go 编程语言

Golang 十年内有望成为第一语言吗?

  •  
  •   iConnect 2018 年 1 月 28 日 14500 次点击
    这是一个创建于 2925 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比较看好 go,虽然还没用来写过什么正式的项目,观望纯粹是因为生态的问题。如果 go 有 java 的年份和生态,早就大干快上了
    140 条回复    2018-01-31 11:08:36 +08:00
    1  2  
    zhaohui318
        1
    zhaohui318  
       2018 年 1 月 28 日
    kotlin 或者 js 有可能超过 java,golang 没戏
    zhangfeiwudi
        2
    zhangfeiwudi  
       2018 年 1 月 28 日
    我觉得不太可能,每个语言都有自己擅长的和不擅长的。
    zsdroid
        3
    zsdroid  
       2018 年 1 月 28 日   2
    不能,因为 php 才是世界上最好的语言,哈哈
    qsnow6
        4
    qsnow6  
       2018 年 1 月 28 日 via iPhone
    不可能
    ivechan
        5
    ivechan  
       2018 年 1 月 28 日
    怎么可能。。。
    glues
        6
    glues  
       2018 年 1 月 28 日
    你连用都没用过,就敢下此结论?
    fjzjk
        7
    fjzjk  
       2018 年 1 月 28 日
    有 java 的生态每个语言都敢这么说
    popbones
        8
    popbones  
       2018 年 1 月 28 日
    golang 好用就在于不是大而全的语言,目前主要还是用来写一些微服务和专精的工具,感觉十分好用。试着写过一些商务逻辑,因为商务逻辑不可避免的会有一些 golang 的哲学认为不应该存在的需求,中间变得很蛋疼就放弃了。

    未来的话我希望 Kotlin 替代 Python,Swift 替代 Java,Golang 替代 C
    f2f2f
        9
    f2f2f  
       2018 年 1 月 28 日
    php 第一的声音还没死绝呢,楼主你歇歇吧
    blless
        10
    blless  
       2018 年 1 月 28 日 via iPhone
    第一不好说 前几应该是妥妥的。
    bramblex
        11
    bramblex  
       2018 年 1 月 28 日   33
    下一个取代 php 成为世界上最好的语言的毫无疑问是 golang
    毕竟这两个用户群体在某方面惊人的相似
    比如我们讨论这些语言的不足之处时,总有很多人跳出来仿佛我们杀了他们爹一样
    zonghua
        12
    zonghua  
       2018 年 1 月 28 日 via iPhone   1
    天天嚷嚷嚷,结果这些语言份额离 VB.NET 还十万八千里。
    lfzyx
        13
    lfzyx  
       2018 年 1 月 28 日
    @popbones Kotlin 是面向 JVM开发的,怎么会和 Python 扯上关系
    qq1054000800
        14
    qq1054000800  
       2018 年 1 月 28 日
    受不了 golang 的错误处理机制
    jetbillwin
        15
    jetbillwin  
       2018 年 1 月 28 日
    选最合适的语言,选最趁手的语言解决问题。不要想着谁替代谁,代码质量看人,技术渣 AI 都救不了。至于生态,确定不是踩坑么……
    Kilerd
        16
    Kilerd  
       2018 年 1 月 28 日
    @popbones kotlin 代替 Python,你怕不是活在梦里。
    feverzsj
        17
    feverzsj  
       2018 年 1 月 28 日
    go 现在也只是小众语言而已
    miketeam
        18
    miketeam  
       2018 年 1 月 28 日
    转 go 不解释了都。大爱啊,开发物联网和 web 后台都可以,又简单,没有历史包袱,性能好,容易度。iOSer 看 go 感觉好亲切。。。
    lihongjie0209
        19
    lihongjie0209  
       2018 年 1 月 28 日
    想多了
    cnbattle
        20
    cnbattle  
       2018 年 1 月 28 日 via Android
    没事在折腾 go,但工作还是 php
    mscb
        21
    mscb  
       2018 年 1 月 28 日 via Android
    虽然很喜欢 go,自己也在用。但是成为第一语言,个人觉得还是没戏
    ltux
        22
    ltux  
       2018 年 1 月 28 日
    当然可能,毕竟 go 他爹有钱。
    wweir
        23
    wweir  
       2018 年 1 月 28 日 via Android
    还没听说有什么 golang 开发的,极大号的项目。小项目、小服务那是一大堆
    woodface2233
        24
    woodface2233  
       2018 年 1 月 28 日 via iPhone
    我还能写代码十年么
    popbones
        25
    popbones  
       2018 年 1 月 28 日
    @Kilerd 我总感觉 Kotlin 将来有跳出 JVM 的野心
    sfqtsh
        26
    sfqtsh  
       2018 年 1 月 28 日 via Android   1
    天杀的{不能单独一行我就受不了。。。
    zpvip
        27
    zpvip  
       2018 年 1 月 28 日 via Android
    金币拿好
    Kilerd
        28
    Kilerd  
       2018 年 1 月 28 日
    @popbones kotlin 现在多人用的原因就是因为可以跟 java 无缝对接,跳出 jvm 就毫无优势了
    amanbolatbalabek
        29
    amanbolatbalabek  
       2018 年 1 月 28 日 via iPhone
    在我看来 golang 是第一:容易学习、github 项目多、很快。
    p.s.:aws lamda 开始支持 go 了!
    loveCoding
        30
    loveCoding  
       2018 年 1 月 28 日
    @wweir #23 还是蛮多的 , 国内大厂很多用 go 写服务端,比如今日头条,360
    miketeam
        31
    miketeam  
       2018 年 1 月 28 日
    @wweir 先说 3 个:moby,docker 相关,lantern。楼下补充
    williamx
        32
    williamx  
       2018 年 1 月 28 日   1
    可问题是 java 都不是第一语言啊,Javascript 才是。
    cxbig
        33
    cxbig  
       2018 年 1 月 28 日
    语言无非是一个工具,工具的排名不重要,重要的是你拿它做出了什么东西。
    feverzsj
        34
    feverzsj  
       2018 年 1 月 28 日
    @wweir docker
    Rasphino
        35
    Rasphino  
       2018 年 1 月 28 日 via Android
    @popbones swift 能不能代替 java 我不懂…但是 golang 能替代 c ? kotlin 能替代 python ?我不信
    miketeam
        36
    miketeam  
       2018 年 1 月 28 日 via iPhone
    c 都发展多少年了。c 他爹都想用 go 了
    asen1987
        37
    asen1987  
       2018 年 1 月 28 日   37
    kingcos
        38
    kingcos  
       2018 年 1 月 28 日
    第一不第一有啥区别吗。。= =
    mengzhuo
        39
    mengzhuo  
       2018 年 1 月 28 日 via iPhone
    瞎扯淡

    PHP 最高!
    astaxie
        40
    astaxie  
       2018 年 1 月 28 日   4
    听说 V2EX 又语言开战了,我当然是站在 Go 这一边的啊,哈哈

    第一,我们完成了第一步,Hello 中国,Go 官网回归中国 https://zhuanlan.zhihu.com/p/33239903
    第二,Go 目前在云计算已经成为了事实上的标准语言,大家可以去 https://www.cncf.io/官网看看目前的项目 90%都是 Go 开发的。
    第三,目前 Go 的第二发挥点是区块链应用,目前市场上的公司基本上都在用 Go 开发。

    最后无耻的插一个广告,GopherChina 2018 大会又要来了,你要想十年后不被抛弃,现在学起来还是来得及的,https://www.bagevent.com/event/1086224
    safeoy
        41
    safeoy  
       2018 年 1 月 28 日 via Android
    Gopher 即将抵达战场
    itfanr
        42
    itfanr  
       2018 年 1 月 28 日 via Android
    @astaxie 没啥意思,各有特长。我倒是希望在某些底层领域,rust 把 c 干掉…
    jfdnet
        43
    jfdnet  
       2018 年 1 月 28 日
    十年这样的跨度 这怎么有答案啊
    safeoy
        44
    safeoy  
       2018 年 1 月 28 日 via Android
    今天刚刷完 shadowsocks-go 的代码,共只有 2000 多行代码,觉得用 go 写网络程序生产力简直太强了
    Damon
        45
    Damon  
       2018 年 1 月 28 日
    @astaxie 谢大是来火上浇油的么?
    wweir
        46
    wweir  
       2018 年 1 月 28 日 via Android
    @loveCoding
    @feverzsj
    docker 相对而言,工程规模不算大

    @loveCoding
    服务端是挺多的,但这并没有说明项目的规模有多大
    to2false
        47
    to2false  
       2018 年 1 月 28 日
    @Damon 看图莫名搞笑
    wq67200976
        48
    wq67200976  
       2018 年 1 月 28 日
    @f2f2f 说的好 给你 10 分
    miketeam
        49
    miketeam  
       2018 年 1 月 28 日 via iPhone
    java 用的多,在公司里面无外乎是先前那些系统需要维护。另外 go 的程序写完以后直接在其他平台跑。还有就是网上有第三方库可以用 go 开发 iOS,。python 代码也可以用 go 程序直接转换成 go。现在好像就是 go 怎么转换 js 还不知道
    BlueFly
        50
    BlueFly  
       2018 年 1 月 28 日
    zouyuyan.com 是说这个吗?
    janxin
        51
    janxin  
       2018 年 1 月 28 日
    我觉得 Kotlin 可以干掉 Java
    janxin
        52
    janxin  
       2018 年 1 月 28 日
    @miketeam 以后用 wasm 谁还关心能不能转 JS
    miketeam
        53
    miketeam  
       2018 年 1 月 28 日 via iPhone
    gopherjs 可以将 go 代码转到 js
    nl101531
        54
    nl101531  
       2018 年 1 月 28 日   2
    有大佬说说 go 没泛型,是怎么写业务复杂的项目的?
    miketeam
        55
    miketeam  
       2018 年 1 月 28 日 via iPhone
    你可以通过接口,低成本解决范型问题。这是 go 的哲学
    congeec
        56
    congeec  
       2018 年 1 月 28 日 via iPhone
    @miketeam 主流语言基本都能转成 js
    miketeam
        57
    miketeam  
       2018 年 1 月 28 日 via iPhone
    你看,像我这样的菜鸟看几天就能明白这么多,go 就是这么简单直接。好多开源项目重来没有学过 go 都能慢慢看懂。go 的编码有规范工具。测试也很简单
    tt0411
        58
    tt0411  
       2018 年 1 月 28 日   1
    没有泛型 /模板, 没有异常, 写业务代码非常难受, 但是写中间件和基础组件非常爽.

    Go 成为第一阵营的语言是必然的, 毕竟容器生态已经是 Go 的天下. 但是成为第一语言无望, 比如 大数据领域 Java 语言的地位没人可以动摇, 机器学习和人工智能领域 Python 已成为前端标准语言, 更不用说 Web 前端领域的独裁者 Javascript 了.
    yanjinbin
        59
    yanjinbin  
       2018 年 1 月 28 日
    @tt0411 异常的问题 ,go 吧 Java 的异常 分成 error 和 panic 是个很好的实践方式
    泛型 的话 ,用爽了 确实很爽 , 这点 Go 没有 Java 来的好
    写业务代码 处理边界问题上真的有点不够吧
    不过 我挺看好的 写基础组件
    miketeam
        60
    miketeam  
       2018 年 1 月 28 日 via iPhone
    大数据现在国内从业人员的学历门槛好像都要重点大学硕士。如果 go 把安卓和 web 后台这块给 java 扳了,Java 岂不是会不会像现今的 oc 呢?
    nicevar
        61
    nicevar  
       2018 年 1 月 28 日 via Android   1
    @miketeam 安卓这块没 go 什么事了,kotlin 比 go 更舒服
    rashawn
        62
    rashawn  
       2018 年 1 月 28 日 via iPhone
    别逗 楼主
    miketeam
        63
    miketeam  
       2018 年 1 月 28 日 via iPhone
    python 恶心就恶心在 2 和 3 还不兼容。输入命令还分 2、3,找项目还要认真了解哈是二还是三。还要左右格式看有没有对齐。各种下划线,头都晕了
    gowk
        64
    gowk  
       2018 年 1 月 28 日 via Android   1
    没有银弹,业务层应用你就老老实实用 Java,这本来就不是 Go 的领域,现在不是学一种语言就可以吃遍天下的时代了,你需要成为 polyglotter
    MikeFeng
        65
    MikeFeng  
       2018 年 1 月 29 日 via Android
    一大波培训班即将开课……
    MonoLogueChi
        66
    MonoLogueChi  
       2018 年 1 月 29 日 via Android
    每一种语言都有自己的特点,都有自己最适合的领域。go 能不能成为第一语言不知道,但是我知道 C#一定会火
    est
        67
    est  
       2018 年 1 月 29 日 via Android
    卧槽,这么多回复??
    gs139
        68
    gs139  
       2018 年 1 月 29 日 via Android
    不说那些高深的,就说最直观的观感,go 不适合写业务,代码太多的噪音,让人没法把精力集中在业务上,搞算法做些底层工作还可以,不过 c 和 c++也不是吃素的。

    目前没有比 Java 更适合写业务逻辑的,在易读和严谨方面刚好平衡
    sammo
        69
    sammo  
       2018 年 1 月 29 日 via iPhone
    缺点太明显。“没法反抗 便开始享受” 我做不到
    blless
        70
    blless  
       2018 年 1 月 29 日 via iPhone
    为啥我用 go 写业务挺爽的……感觉我跟楼上几位对业务的理解有点不太一样。也就继承麻烦一点…不过都不是事,遇见 error 直接 panic 就是了,稍微封装一下 业务代码看起来还是很简洁明了的。实在要处理 error 另外封装一个 WithErr 的方法就是…
    yanjinbin
        71
    yanjinbin  
       2018 年 1 月 29 日 via iPhone
    @blless 你业务边界问题和复杂需求都能用 go 很好处理?
    mritd
        72
    mritd  
       2018 年 1 月 29 日 via iPhone
    十年内难,虽然很看好 go 也在学,但是本身就是干 java 的,java 这个体系太庞大了,某些东西已经深入企业,想要彻底换掉太难
    ycz0926
        73
    ycz0926  
       2018 年 1 月 29 日
    说 php 第一的,总感觉像鸵鸟一样~
    blless
        74
    blless  
       2018 年 1 月 29 日 via iPhone
    @yanjinbin 都是语言,我觉得我换语言照样写……其实不是很懂你们说的这些。至少现在的需求我用 go 实现跟其他语言没什么区别。也就继承 反射不太好用,在我看来已经够了,实在不行还有 unsafe,但是业务层一般没有这些,基本都是逻辑。
    aksoft
        75
    aksoft  
       2018 年 1 月 29 日
    php 是世界上最好的语言
    miketeam
        76
    miketeam  
       2018 年 1 月 29 日 via iPhone
    又来了…
    mooncakejs
        77
    mooncakejs  
       2018 年 1 月 29 日 via iPhone
    再给一百年都不会
    looplj
        78
    looplj  
       2018 年 1 月 29 日 via Android
    各有所长,go 写业务太繁琐了。现在 Java 的演进速度越来越快,kotlin 也不一定能够取代。
    tairan2006
        79
    tairan2006  
       2018 年 1 月 29 日
    第一语言肯定是 Python 啊 23333
    realwangyibo
        80
    realwangyibo  
       2018 年 1 月 29 日
    @bramblex 很可惜感谢只能点一次,说得太好了老铁。
    draguo
        81
    draguo  
       2018 年 1 月 29 日
    现在这么浮躁的氛围,未来我不认为会出现一家独大的情况
    nullen
        82
    nullen  
       2018 年 1 月 29 日
    不会。
    0915240
        83
    0915240  
       2018 年 1 月 29 日
    擦 语言战
    zarte
        84
    zarte  
       2018 年 1 月 29 日
    交叉编译这特征都没人说?弄爬虫程序编译完就可以用了,其他还要配环境,py 那还要看下版本多少的。jb 出的编译器已经很好了。引入包也很方便。
    第一应该是 js,go 能前几。
    puperSB
        85
    puperSB  
       2018 年 1 月 29 日
    @wweir docker 算不算
    xiaoqi
        86
    xiaoqi  
       2018 年 1 月 29 日
    流年似水,十年一晃就过去,恐怕那时候 Go 是不是第一语言也没那么重要了吧
    jiyinyiyong
        87
    jiyinyiyong  
       2018 年 1 月 29 日
    Clojure(Script) 表示不服, 后端怎么搞, 都要有人写界面啊, 界面代码一写就没边了.
    dianso
        88
    dianso  
       2018 年 1 月 29 日 via iPhone
    小看 e
    skadi
        89
    skadi  
       2018 年 1 月 29 日
    恶心的异常处理 if err!=nil
    还没有泛型,标准库连 math.Maxint 都不提供
    蹩脚的 interface{}
    没有重载函数和运算符
    有 gc.导致根本不能 RAII.
    还有其他一大堆小毛病.
    反正我这个习惯了 cpp 的去写 go,感觉手脚被绑.
    glues
        90
    glues  
       2018 年 1 月 29 日
    @blless 「遇见 error 直接 panic 」,我要是你的上司,今年的年终奖恐怕要给你扣了
    windyboy
        91
    windyboy  
       2018 年 1 月 29 日
    go lang 目标只是在服务器上做好静态的事情

    语言排序这种事情,很无知

    就好像操作系统里那个是第一指令,ls 吗?有何意义?
    miketeam
        92
    miketeam  
       2018 年 1 月 29 日 via iPhone   1
    @skadi 你是不知道某些语言,你可以随便写,但是不给你返回错误处理的地方,要你自己去判断。go 同时把 err 返回给你。真的很爽很优雅改好吧
    gkiwi
        93
    gkiwi  
       2018 年 1 月 29 日
    @asen1987 #37 请 P 出来,C,Java,Python,JS 等
    pathbox
        94
    pathbox  
       2018 年 1 月 29 日 via iPhone
    进前五是可能得
    blless
        95
    blless  
       2018 年 1 月 29 日 via iPhone
    @glues 看完整回复好吗?我说的只是业务层,大部分的业务层都是高度封装的接口,原则上业务层上任何错误都不能将流程继续下去,你 err 不 panic 留着干嘛?偶尔要处理的我也说了处理情况。还有年终已经领了 不劳您操心,有问题尽管提,阴阳怪气难免招人喷
    wekw
        96
    wekw  
       2018 年 1 月 29 日
    围观 11 楼杀爹论。

    张口就骂人,还敢实名制上网?
    wekw
        97
    wekw  
       2018 年 1 月 29 日
    这是华南理工被黑的最惨的一次。充分表现了 Javascript 技术对人性的扭曲。我说真的,我有好几个朋友,本来好好的人,写了两年 js 就开始跟别人大喷特喷,性格都变了。
    oyosc
        98
    oyosc  
       2018 年 1 月 29 日
    说实话第一有点为难它了,golang 只能说是一个替代品,我觉得 JS 倒有可能第一
    miketeam
        99
    miketeam  
       2018 年 1 月 29 日 via iPhone
    @wekw 我肚子笑痛了
    glues
        100
    glues  
       2018 年 1 月 29 日
    @blless 代码写的垃圾还有理了,呵呵
    1  2  
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2081 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 37ms UTC 12:12 PVG 20:12 LAX 04:12 JFK 07:12
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86