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

golang 开发者大部分是从 PHP 和 Python 转过来的吗?

  •  2
     
  •   noble4cc · 2020-04-05 15:37:34 +08:00 · 13508 次点击
    这是一个创建于 1453 天前的主题,其中的信息可能已经有所发展或是发生改变。

    除了一开始工作就用 golang 的,我发现其他都是从 PHPhe 和 Python 转过来的,写 Java 的倒是比较少转 go

    121 条回复    2020-05-09 07:00:38 +08:00
    1  2  
    scukmh
        1
    scukmh  
       2020-04-05 15:57:02 +08:00
    c/c++也有呀。
    rebounce
        2
    rebounce  
       2020-04-05 16:35:48 +08:00 via iPhone
    Java 生态很好,转它干啥。
    EPr2hh6LADQWqRVH
        3
    EPr2hh6LADQWqRVH  
       2020-04-05 16:37:52 +08:00   ❤️ 18
    据说 golang 本来准备干 C++的,结果 C++啥事没有,什么 Ruby Python PHP 之流都躺枪了
    lights
        4
    lights  
       2020-04-05 16:46:26 +08:00
    @avastms 你要笑死我
    cloud0001
        5
    cloud0001  
       2020-04-05 16:58:35 +08:00
    @avastms 😂
    souths
        6
    souths  
       2020-04-05 17:26:57 +08:00   ❤️ 11
    PHP 是想进一步,Python 纯粹是找不到工作,不知道我说的对不对
    sls
        7
    sls  
       2020-04-05 17:28:03 +08:00
    还有 node.js 的
    wunonglin
        8
    wunonglin  
       2020-04-05 17:34:23 +08:00
    js+1
    jack1998
        9
    jack1998  
       2020-04-05 17:43:10 +08:00
    @souths 说的很对 py 处于一个尴尬的位置
    wuwukai007
        10
    wuwukai007  
       2020-04-05 17:46:26 +08:00
    golang 目前工作中 应用场景 后端居多吗?
    Mohanson
        11
    Mohanson  
       2020-04-05 17:46:39 +08:00 via Android   ❤️ 2
    曾经最爱 py, 如今只爱 c 和 go 并坚定不移地劝异教徒皈依 c 和 go.
    huntcool001
        12
    huntcool001  
       2020-04-05 18:07:42 +08:00
    想搞云服务相关的东西现在是必须得学 Golang 了
    wikinee
        13
    wikinee  
       2020-04-05 19:10:07 +08:00 via Android
    有好的学习路线吗
    blless
        14
    blless  
       2020-04-05 19:30:55 +08:00 via Android   ❤️ 2
    上次那个说 php 转 go 的被喷着几十条。不知道为啥这些人对 Go 抱有这么强敌意…可能真的动到基本盘了
    darluc
        15
    darluc  
       2020-04-05 19:36:35 +08:00
    PHP 转 Go
    ntgeralt
        16
    ntgeralt  
       2020-04-05 19:42:46 +08:00
    玩过 GO 回不去+1
    0xABCD
        17
    0xABCD  
       2020-04-05 20:17:07 +08:00 via Android
    @souths 现在还有用 PHP 的公司吗
    falcon05
        18
    falcon05  
       2020-04-05 21:06:37 +08:00   ❤️ 2
    @0xABCD WordPress 就是用 PHP,去年他家还收购了汤不热,全世界网站里使用 WordPress 搭建的占 35%,另外 P 站也是 PHP.
    liyaojian
        19
    liyaojian  
       2020-04-05 21:20:49 +08:00 via iPhone
    @falcon05 国内真的没什么大公司在用了,有的也是边缘项目
    asAnotherJack
        20
    asAnotherJack  
       2020-04-05 21:27:23 +08:00
    emm…我是从 Android 转的,就是工作中用 go 慢慢一点一点就没怎么写过 Android 了,现在跳槽打算走后端了,也不知道理智不理智,就是面试觉得需要学的还很多,好难啊,但愿没选错吧
    ccc825
        21
    ccc825  
       2020-04-05 21:30:58 +08:00   ❤️ 1
    两年 php,目前打算把 laravel 底层看一看然后转 go 了
    lenkaren
        22
    lenkaren  
       2020-04-05 21:40:31 +08:00
    php 适合做论坛网站这些,为了弥补比如长连接、异步处理之类的短板,可以选择用 swoole…但最近 swoole 生态都还没搞好就想搞商业化收割一波,前景不明,要真抱死 php 一门语言对后端开发来说局限太大了。

    所以转型或者在项目发展到一定规模的时候转 JAVA 或者 GO 是很正常的选择(我作为一名 phper 、接下去准备做 java 项目了,而且也打算学学 go
    janxin
        23
    janxin  
       2020-04-05 21:43:27 +08:00
    你看我是 C++
    luckyrayyy
        24
    luckyrayyy  
       2020-04-05 21:45:02 +08:00
    据我所知 Java 的很多啊,头条系大量 Java 转吧?我不是头条的是这么听说的。
    另外认识的 Rancher 朋友说开始很难招到 go,就找了很多 Java 转
    Evilk
        25
    Evilk  
       2020-04-05 22:54:10 +08:00
    我们今年打算升级到 PHP7.2 或以上,然后,部分高 IO 业务,用 swoft 或者 hyperf,重构
    mnssbe
        26
    mnssbe  
       2020-04-05 22:55:35 +08:00
    @Evilk cpu 密集型吧
    none
        27
    none  
       2020-04-05 22:59:53 +08:00   ❤️ 1
    用过 Golang 之后就不想用其他编程语言了
    mitu9527
        28
    mitu9527  
       2020-04-05 23:05:15 +08:00   ❤️ 18
    转来转去的,最后发现什么都是半桶水,30 岁就开始慌了,然后 35 岁就失业了。转来转去的,不是在浪费自己的生命么?前几年转“架构师”,这几年转“算法”,web 前端火了就转 js,人工智能火了就转 python,微服务火了就转 go,你们是真能折腾,一直活在“转”的路上。在现在的领域中没出类拔萃,跑到另一个领域中就能了?
    emeab
        29
    emeab  
       2020-04-05 23:05:24 +08:00
    p 站流量够大了吧 貌似还是用的 php 不过估计也在转了
    mitu9527
        30
    mitu9527  
       2020-04-05 23:31:01 +08:00
    @Evilk 先升级到 7.2 或者 7.3,然后我觉得该考虑先升级 CPU 或者加机器,然后等 PHP 8 的 jit 。硬件升级花的钱往往比软件升级花的钱少很多,CPU 升级不算贵,网络带宽升级才贵。重构能成的没几个,最后都变成了重做。当然也要看你们团队的实力了。
    wangyzj
        31
    wangyzj  
       2020-04-05 23:49:16 +08:00
    据说现在国内的 go 是全世界最火的,不知道真假
    b00tyhunt3r
        32
    b00tyhunt3r  
       2020-04-05 23:55:23 +08:00
    @Mohanson
    对俺来说是 c 和 rust,我们可能想的差不多
    yafoo
        33
    yafoo  
       2020-04-06 00:17:45 +08:00 via Android
    python 听说过,专业搞人工智能,go 没听过,想知道有啥优势?
    wuwukai007
        34
    wuwukai007  
       2020-04-06 00:28:19 +08:00 via Android
    把 pythoner,javar,phper 拉过来凑一桌麻将吧😂
    gowk
        35
    gowk  
       2020-04-06 00:33:38 +08:00 via Android
    一直关注着 Go,工作中没用到。其实吧。。1.16 ~ 1.19 就出泛型了,到时候再用不迟。
    paoqi2048
        36
    paoqi2048  
       2020-04-06 00:46:26 +08:00
    @avastms 给劲
    buffzty
        37
    buffzty  
       2020-04-06 01:44:55 +08:00
    @gowk 你怎么知道什么时候出泛型的呢
    beidounanxizi
        38
    beidounanxizi  
       2020-04-06 02:13:28 +08:00
    @gowk 2.0 还在起草呢
    beidounanxizi
        39
    beidounanxizi  
       2020-04-06 02:13:53 +08:00
    公司不强制 我肯定直接用 go 了
    tingyunsay
        40
    tingyunsay  
       2020-04-06 02:20:31 +08:00 via iPhone
    百度那一套不都还是 odp,php 搞的
    mamahaha
        41
    mamahaha  
       2020-04-06 02:32:05 +08:00   ❤️ 4
    那些把 golang 夸上天的然后把别的语言踩下地的人,golang 的水平还真不见得比 c 、php 、java 程序员看一两天 golang 入门教程的水平高,有大项目经验的都是边做项目边熟悉语言。
    laragh
        42
    laragh  
       2020-04-06 03:15:40 +08:00
    @tingyunsay 厉害了。。。是这么回事
    dayeye2006199
        43
    dayeye2006199  
       2020-04-06 03:20:26 +08:00
    @0xABCD facebook
    0x64
        44
    0x64  
       2020-04-06 03:30:54 +08:00 via Android
    要是 JAVA 和 golang 之间怎么选呢?
    2379920898
        45
    2379920898  
       2020-04-06 08:34:12 +08:00
    php 是找不到工作才转的,人家 java 市场甩 go 十条街,他脑子抽水了,他要转
    ZSeptember
        46
    ZSeptember  
       2020-04-06 09:47:42 +08:00
    对我来说,没有什么转不转的,都是后端一个语言而已。
    abcbuzhiming
        47
    abcbuzhiming  
       2020-04-06 09:48:25 +08:00
    @avastms go 最开始就是 google 内部为了应对 C++开发的巨型网络应用程序编译太慢,各种奇葩问题太多;而开发出来的语言,结果放出来后,大家发现这玩意做网络应用太好用了,于是以前那些主要在网络上发力,但是性能不咋样的语言全部躺了,C++耸耸肩膀无所谓,不做网络程序我还可以做硬件,做操作系统底层。反正我传统领域 抽象能力+高性能,暂时也没人能取代的了
    tairan2006
        48
    tairan2006  
       2020-04-06 10:38:18 +08:00 via Android
    Go 写大并发网络程序简单得多…写复杂业务不如 Java,所以不存在转不转。合适领域用合适的语言吧…
    guokeke
        49
    guokeke  
       2020-04-06 10:54:41 +08:00
    我觉得就是国内跟风吧,好似一代版本一代神,go 好用是因为专门为高并发,web 做的设计。
    tourist2018
        50
    tourist2018  
       2020-04-06 11:00:23 +08:00
    讲道理 c 语言转过来的也不少
    di1012
        51
    di1012  
       2020-04-06 11:22:09 +08:00
    .neter 正在学 go
    dbskcnc
        52
    dbskcnc  
       2020-04-06 11:26:21 +08:00
    c++过来的,go 确实方便实用
    hallDrawnel
        53
    hallDrawnel  
       2020-04-06 11:29:15 +08:00
    C++转过来的,C++那个编译系统。。。。害还是 go 香。
    sagaxu
        54
    sagaxu  
       2020-04-06 11:36:38 +08:00 via Android
    php 由于 fpm 的局限性,很多事情做的不好或者没法简单做,要突破局限性只能引入 swoole,门槛比转 Go 高的多,swoole 自身问题比较多,遇到问题的人却很少,你品你细细的品。加上 PHP 是动态弱类型,容易犯低级错误。
    xmge
        55
    xmge  
       2020-04-06 11:42:55 +08:00
    用过 Golang 之后就不想用其他编程语言了 +1
    Evilk
        56
    Evilk  
       2020-04-06 11:53:22 +08:00
    @mnssbe IO 密集型
    Evilk
        57
    Evilk  
       2020-04-06 11:57:48 +08:00
    @mitu9527 是的,最先考虑升级 7.3,而且,平均每 2 年,就会升级硬件,因为我们的业务,远远达不到换语言的地步,也不是全部重构,只是部分高 IO 业务,先试水,不急,慢慢来,虽说 fpm 架构在高并发的时候,是有点,显得力不从心,但还不至于换语言,这个成本,才是真的高
    ccppgo
        58
    ccppgo  
       2020-04-06 12:14:04 +08:00
    @ccc825 都要转 go 了还看 laravel 底层不是多此一举吗
    di94sh
        59
    di94sh  
       2020-04-06 12:22:49 +08:00 via iPhone
    crud boy 用啥语言不都一样么
    cabing
        60
    cabing  
       2020-04-06 12:36:48 +08:00
    看工作内部环境和工作氛围,还有应用场景。

    有时候用啥语言不是你能决定的。这是个权衡取舍的过程。
    rophie123
        61
    rophie123  
       2020-04-06 12:38:44 +08:00 via Android
    我们用 go 和 PHP 配合
    LokiSharp
        62
    LokiSharp  
       2020-04-06 12:42:08 +08:00
    还有 JS
    raincode
        63
    raincode  
       2020-04-06 12:46:56 +08:00
    除非内部转 go,边做项目边学的,自己私下学点 demo 的那不叫转,没啥用,想通过面试转的能有几个啊
    jjx
        64
    jjx  
       2020-04-06 12:51:04 +08:00
    转,完全转的极少吧

    一般都是某些服务使用 go

    像我们的应用, 如果完全从 python 转 go, hoho, 那是把整个生态环境全部扔掉
    gejun123456
        65
    gejun123456  
       2020-04-06 12:54:42 +08:00
    yeah java 生态太好,kotlin 多香
    neoblackcap
        66
    neoblackcap  
       2020-04-06 13:21:20 +08:00
    @abcbuzhiming 我看他们的介绍,倒是觉得 Bell Lab 出来的那些人就是对 C++有偏见。自己想用 Plan 9 的那套重构一下。Google 内部有非常完善的 C++生态圈,而且他们是分布式编译的,速度应该不至于忍受不了。
    其实他们本来就是在重构,好像是 Google Code 还是啥,反正是一个主要用于下载的项目。按我说啊,用 C++或者 Java 重写都可以获得比以前更好的效果。硬推 Golang,你说他们几个人没有私心,我是不太觉得的。
    blless
        67
    blless  
       2020-04-06 13:30:22 +08:00 via Android
    不知道为啥这么多人非要觉得跟风,上次看的报告,go 语言在腾讯内部排名第三了
    blless
        68
    blless  
       2020-04-06 13:34:09 +08:00 via Android
    @neoblackcap 一个很现实的理由,大部分 cpu 都是多核了,然而大部分编程语言本质上还在用单核模式
    hantsy
        69
    hantsy  
       2020-04-06 13:34:10 +08:00   ❤️ 1
    大概看过了 Go 语法,不知道与 C 之类有什么优势,除了 Go 核心本身加入一些处理 http 的包。

    与 Java,C#/.net 这些现代的 OOP 语言,在讲法和生态方面都是差得太远。Go 接口的实现,用看到一句话讲,就是“碰瓷”式的实现。

    Go 没有 PHP 的 PSR 和 Java 的 JSR 约束,写起来的程序自由程度太大,基本的项目结构也没有统一的规范或约定,没有统一的包管理工具。如果公司决定 PHP 转 Go 写服务器端程序,脑子没问题吧,PHP 在生态上比 Go 好得太多了。
    AngryMagikarp
        70
    AngryMagikarp  
       2020-04-06 13:37:50 +08:00
    以前用 C 、Python 比较多,现在用 Go 。但我不喜欢“转”这个字,因为在我看来,语言是非常容易掌握的工具,根本不需要“转”,只是拿起来用罢了。

    如果有必要,写 Rust 甚至 Lisp 都没问题。
    hb1707
        71
    hb1707  
       2020-04-06 13:46:51 +08:00
    我就是 PHP 转的 GO,这是我最近的开源项目: https://www.v2ex.com/t/659803
    abcbuzhiming
        72
    abcbuzhiming  
       2020-04-06 14:08:02 +08:00
    @neoblackcap 不存在什么偏见不偏见,C++历史包袱太重是事实,而且像它们这种顶尖的技术人员,是从来不会满足一把不太好用的刀的,google 内部确实有很完善的 C++生态圈,但是历史包袱也很重,我看过一个访谈,google 有一个 C++程序,编译出来的主执行文件有 1GB 之大,整个编译过程需要 20 多个小时完成,导致发版非常困难,你觉得他们这样的人会忍吗?越是顶尖的高手,越是难以容忍一些低效的东西。而且 C++这种特性太多,高度灵活多变的语言对编程者要求太高,不属于对工程化友好的语言
    alexsunxl
        73
    alexsunxl  
       2020-04-06 14:10:35 +08:00   ❤️ 1
    @mitu9527 这位兄弟,你没搞清楚赛道和能力的区别吧。
    有的赛道就是上限低啊, 有的赛道就是你摸着门槛进去,收入下限也很高。比如大数据,ai 这些。
    别人为了生存或者能力上更近一步,切换一条更理想的赛道,不过分啊。
    这是内驱动性的,只是表现得像是转来转去。
    areless
        74
    areless  
       2020-04-06 14:12:07 +08:00 via Android
    为什么要转?青铜螺丝刀 黄金扳手 ~天天这样去比较就不用干活了。
    huiyifyj
        75
    huiyifyj  
       2020-04-06 14:16:50 +08:00
    干 c++ 还是得看 rust, go 只能吸引下 php, node, py 这些人.
    我最近正打算从 go 转向 rust.
    qloog
        76
    qloog  
       2020-04-06 14:20:54 +08:00
    @emeab B 站 90%以上的都是 go 写的。 从 2015 就逐渐在转了。
    Hanggi
        77
    Hanggi  
       2020-04-06 14:37:00 +08:00
    @huiyifyj rust 生态没有 go 好,各种服务厂商的支持也是落后于 go 的。
    ppphp
        78
    ppphp  
       2020-04-06 14:39:43 +08:00
    找不到一家 ruby 的公司,golang 也没有引起我的厌恶
    mitu9527
        79
    mitu9527  
       2020-04-06 15:10:38 +08:00
    @alexsunxl 多种语言充分利用是没问题的。我不反对学,但是反对“转”,我觉得不是表现的转来转去的,是真的跟风转的多。
    pursuer
        80
    pursuer  
       2020-04-06 15:12:30 +08:00
    @abcbuzhiming c++都能编译出 1GB,用其他语言也减小不了了吧?何况 c++还可以动态链接,go 出来就只有一个可执行文件所有库都打包的不是更不行么
    xjroot
        81
    xjroot  
       2020-04-06 15:43:17 +08:00
    @souths 这句话说的满分,6666666,一句概况全局了。
    huiyifyj
        82
    huiyifyj  
       2020-04-06 15:43:35 +08:00
    @ppphp #78
    国内 ruby 是真的挺少公司用。好像国外就比较流行 ruby...
    ica10888
        83
    ica10888  
       2020-04-06 15:54:12 +08:00
    有很多 kubernetes 云计算生态相关的项目都是用的 golang... 所以有些后端,如 Java,c 系 转 go 的,PHPer 和 Python 一般是转过来做 web 开发的,golang 来开发 web 也很方便。
    emeab
        84
    emeab  
       2020-04-06 16:48:32 +08:00
    @qloog 是 p 站啦 不是 b 站。
    bojue
        85
    bojue  
       2020-04-06 16:55:26 +08:00 via iPhone
    @souths 没啥深度也很惨的,py 顺手学 go 的遇到几个
    liangjingkanji
        86
    liangjingkanji  
       2020-04-06 20:38:00 +08:00
    @wangyzj 国内的 GO 的确热度都超越国外, 这么说吧, 所有 GO Web 框架都有了中文文档, 甚至标准库都翻译了; 而且有很多主流库都是中国人创建的; 看看 GitHub 的贡献者就能看出很夸张了;
    liangjingkanji
        87
    liangjingkanji  
       2020-04-06 20:39:39 +08:00
    Go 的语法感觉不咋地, 没有 Kotlin 优秀; 但是语言层面的协程和简洁的 API 的确优秀; 综合来看简洁高性能; 而且写 CLi 脚本工具很方便, 原生跨平台
    nguoidiqua
        88
    nguoidiqua  
       2020-04-06 21:33:05 +08:00
    @liangjingkanji

    老一辈编程语言的生态大多比较成熟了,给国人表现的机会不多,所以国内比较热衷抢占新的语言生态。

    再下一代,估计国内也有实力推出新的编程语言了。
    lyping
        89
    lyping  
       2020-04-06 21:39:13 +08:00
    要是嵌入式能使用 go,就无敌了。
    ccc825
        90
    ccc825  
       2020-04-06 22:04:20 +08:00
    @ccppgo 今年转,不是现在就转。接下来肯定还得一边干 php 一遍继续学 go 啊 T T
    blless
        91
    blless  
       2020-04-06 23:35:59 +08:00 via Android
    @lyping tinygo 不过有些特性不能用
    roundgis
        92
    roundgis  
       2020-04-07 00:53:45 +08:00
    @jjx 现在你们的 go 用在什么场合呢?
    roundgis
        93
    roundgis  
       2020-04-07 00:55:11 +08:00
    @lyping 如果是用来做 gateway 的开发,golang 也是可以的
    sunwei0325
        94
    sunwei0325  
       2020-04-07 00:59:42 +08:00
    @roundgis gateway 开发用 lua 多吧, openresty 相关的, kong 或者 apisix, golang 最主要的优势难道不是代码看不见吗?
    Rorysky
        95
    Rorysky  
       2020-04-07 01:44:32 +08:00
    @lyping 有运行时,基本否决了嵌入式
    laike9m
        96
    laike9m  
       2020-04-07 03:44:41 +08:00 via Android
    @mitu9527 大部分人即使不转也是半桶水。。so
    monkeyWie
        97
    monkeyWie  
       2020-04-07 08:59:34 +08:00
    java 转的(也不算,恰饭还是 java,go 拿来写小东西),之前 netty 做网络开发,现在用 go 做网络开发,心智负担小的多,懂得自然懂。
    biguokang
        98
    biguokang  
       2020-04-07 09:17:26 +08:00
    @falcon05 貌似说后面要转架构了,转成 go + vue
    yuhangch
        99
    yuhangch  
       2020-04-07 09:22:59 +08:00
    沉迷了一段 go,因为自己在地理信息领域,写 Web 业务 Java 更方便,数据处理 Python 生态更好,现在 go 只沦为我的 CLI 工具御用语言了。。
    abcbuzhiming
        100
    abcbuzhiming  
       2020-04-07 09:24:25 +08:00
    @pursuer 然而 C++编译速度就是慢,这可以说是 go 出现的非常重要的原因之一
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1386 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 23:40 · PVG 07:40 · LAX 16:40 · JFK 19:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.