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

golang 何时干掉 Java

  •  
  •   xypcn · 2018-06-23 23:04:32 +08:00 · 36554 次点击
    这是一个创建于 2374 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用 java 超过 10 年,golang2 年,就这两年的心得来看,golang 应该是能把 java 干死的。 但从招聘反馈的信息来看,java 的高薪资岗位明显多于 golang. 只怪 java 的沉淀太多,有很多事情 golang 可以替代的,golang 的实施成本要低很多,用 golang 的感觉也很舒服,但工作上因放弃 java 吃了大亏

    153 条回复    2019-10-10 11:47:48 +08:00
    1  2  
    leakeung
        1
    leakeung  
       2018-06-23 23:06:46 +08:00   ❤️ 1
    你想多了.
    ToT
        2
    ToT  
       2018-06-23 23:11:31 +08:00
    什么叫干掉啊。。。工具而已
    a7a2
        3
    a7a2  
       2018-06-23 23:14:22 +08:00   ❤️ 1
    想多了,重要从一点看就能看出,例如安卓开发者使用 golang 开发 app 的数量对比 java 的就知道
    xypcn
        4
    xypcn  
    OP
       2018-06-23 23:15:23 +08:00
    golang 绝不是一个工具,真的很好用的,尤其是在流行的微服务开发,golang 的明显,适合创业项目,没有包袱
    shiny
        5
    shiny  
       2018-06-23 23:17:01 +08:00
    不是工具是什么
    Raymon111111
        6
    Raymon111111  
       2018-06-23 23:18:35 +08:00
    生态不是一朝一夕的事情

    全公司从上到下都是 java 的情况下换别的基本不可能
    defel
        7
    defel  
       2018-06-23 23:18:37 +08:00 via iPhone   ❤️ 1
    个人觉得不可能,语言发展到今天,fortran 都还没挂,别说 java 了。
    shiny
        8
    shiny  
       2018-06-23 23:18:47 +08:00   ❤️ 20
    常言道:不要有了把锤子就到处去找钉子,但我们搞程序的往往会爱上锤子,把自己定义成锤子专家,甚至在论坛上提问锤子何时干掉锯子。
    geeti
        9
    geeti  
       2018-06-23 23:19:36 +08:00
    java 太繁琐,讽刺的是最近发现 James Gosling 所在的部门也是以 go 为主
    xypcn
        10
    xypcn  
    OP
       2018-06-23 23:21:13 +08:00   ❤️ 6
    golang 一个进程占 10M~20M,一个 JAVA 进程至少是 400 多 M,spring 全家桶,都是占内存大户,一个阿里云入门主机无任何压力跑几十 golang 进程,java 也就 2 个,再多就出乱子了
    caixiexin
        11
    caixiexin  
       2018-06-23 23:32:46 +08:00 via Android   ❤️ 3
    百足之虫,死而不僵,何况还没死呢。。
    janus77
        12
    janus77  
       2018-06-23 23:36:03 +08:00
    只有项目 技术被干掉的,这么几十上百年来 没听说过语言被干掉的,尤其是还在更新的现代性语言
    heww
        13
    heww  
       2018-06-23 23:46:05 +08:00 via iPhone
    @xypcn 吃内存的何止 java,python 一个样。
    superbiger
        14
    superbiger  
       2018-06-23 23:46:47 +08:00   ❤️ 6
    为了把题主这潭水搅浑,我选 rust
    xypcn
        15
    xypcn  
    OP
       2018-06-23 23:47:12 +08:00
    @heww 你用 golang 吧,你会喜欢上他的,但可能对工作无益
    xypcn
        16
    xypcn  
    OP
       2018-06-23 23:49:46 +08:00
    @superbiger rust 也行,反正只要 java 死了,就不会有读什么源码,jvm 优化了,当然只是堑时
    Sparetire
        17
    Sparetire  
       2018-06-23 23:50:16 +08:00 via Android
    "霍元甲,你嘛时候是荆门第一啊?"
    miketeam
        18
    miketeam  
       2018-06-23 23:50:39 +08:00 via iPhone
    你的领导用 java,领导的领导也是,怎么推?让他们自己下岗?
    wdlth
        19
    wdlth  
       2018-06-23 23:51:24 +08:00
    @xypcn 两个运行时都不一样,JVM 是虚拟机,执行 Opcode,能执行 Java、Clojure、Scala、Groovy、Kotlin 等至少 5 种语言。Go 目前并不包含虚拟机,不执行 Opcode,所以不同的平台架构下要生成不同的程序。
    heww
        20
    heww  
       2018-06-23 23:51:25 +08:00 via iPhone
    去年起我们的项目就改为用 golang 了。微服务,不想用 java 系的 spring boot 就改为用 golang 了,我们之前用的都是 python。
    ChenJHua
        21
    ChenJHua  
       2018-06-23 23:52:20 +08:00 via iPhone
    不存在的
    xypcn
        22
    xypcn  
    OP
       2018-06-23 23:52:37 +08:00
    @miketeam 所以只能用在创业项目上,新项目上,历史问题太重
    cmuler
        23
    cmuler  
       2018-06-23 23:58:07 +08:00   ❤️ 2
    https://studygolang.com/articles/3838
    感觉现在的新语言都是为了解决某些特定的问题而产生的,go 是为了解决一些 c++ 的痛点的。说实话我还认为 go 这样设计粗糙的语言根本不能写大型程序呢。如果要解决 io 密集型的问题,java 上的 netty 和 vert.x 了解下。
    cmuler
        24
    cmuler  
       2018-06-24 00:00:01 +08:00   ❤️ 1
    我完全不了解为什么有这么多人会讨厌 java 这么优秀的语言, 更何况 jvm 的生态已经非常成熟了。
    PDX
        25
    PDX  
       2018-06-24 00:02:12 +08:00 via iPhone
    java 历史包袱太多,写法花样太少,和新东西一比真的很让人嫌弃。但是你要相信,java 可以很差,JVM 可是没人比得了。
    dbow
        26
    dbow  
       2018-06-24 00:02:32 +08:00
    干不掉,JVM 过于牛逼。
    bumz
        27
    bumz  
       2018-06-24 00:06:15 +08:00
    golang 何必干掉 java ?
    orangeade
        28
    orangeade  
       2018-06-24 00:26:04 +08:00 via Android   ❤️ 1
    Apache 基金会一堆开源项目都是 Java 的

    一个语言替代另一个语言一般是适用范围比较重合,并且新的语言比较容易普及吧,比如 Perl 和 Python,OC 和 Swift,
    或者一个行业替代另一个行业,Android 上 Java 替代了各种用纯 C/C++开发手机 app 的平台
    blless
        29
    blless  
       2018-06-24 00:26:23 +08:00 via iPhone
    @cmuler 设计…粗糙?这里粗糙的定义是啥,没有泛型跟完全体的继承吗…还是语法糖不够…
    starcraft
        30
    starcraft  
       2018-06-24 00:29:38 +08:00 via iPhone
    明明是从高薪到底薪全方位碾压。你倒不如盼着 c/c++回春反干实际点。
    yhzwy
        31
    yhzwy  
       2018-06-24 00:32:20 +08:00
    大项目不还得用 java

    当然作为程序员个人肯定是喜欢用 golang python 这种的。
    xypcn
        32
    xypcn  
    OP
       2018-06-24 00:35:48 +08:00
    @bumz java 的优势在做后台上,spring boot 之类确实在轻量化了 java 的包袱,但相对 golang gin 之类的来说,spring 太重 @starcraft 薪资方面 java 高于 golang,其实这是社会的浪费,有时很多东西就是这样,明明有更好的东西可以代替,但 java 有先发优势,也没办法
    applehater
        33
    applehater  
       2018-06-24 00:37:58 +08:00
    语法糖不够,写个增删改查都要写一堆代码。
    xypcn
        34
    xypcn  
    OP
       2018-06-24 00:43:09 +08:00
    @applehater 有成熟的 orm,不难,我写过一个,能实现大部分 spring data-jpa 功能
    j2gg0s
        35
    j2gg0s  
       2018-06-24 00:43:46 +08:00
    有生之年
    Mitt
        36
    Mitt  
       2018-06-24 00:45:49 +08:00
    @xypcn 是 spring boot 让你认为 java 的用处是这个?


    @cmuler go 是为了解决 C 的痛点 rust 才是为了解决 C++的痛点
    Mazexal
        37
    Mazexal  
       2018-06-24 00:47:05 +08:00
    C#表示不服....java 主要是生态太好了
    freedomSky
        38
    freedomSky  
       2018-06-24 00:51:42 +08:00 via iPhone   ❤️ 1
    我们的产品运行环境有一部分是 AIX,开发环境是 linux,应用是 java 开发的,一点儿扩展功能我用了 go,写完了才发现目前 go 还不支持 AIX,😷
    applehater
        39
    applehater  
       2018-06-24 01:02:20 +08:00
    @xypcn 没泛型,简单的操作都得重复写代码
    cyspy
        40
    cyspy  
       2018-06-24 01:04:48 +08:00 via Android
    golang 吃掉 scala、kotlin、clojure 和 groovy 的应用场景之前,graalVM 肯定已经把 golang 收归己有了。
    miketeam
        41
    miketeam  
       2018-06-24 01:14:59 +08:00 via iPhone   ❤️ 1
    上面说 java 牛逼的,我不服。我们组的项目代码里面各种 handle,有时有找个函数最终执行的地方特么找半个小时,和我说架构优雅?封装到位?我呸!
    miketeam
        42
    miketeam  
       2018-06-24 01:16:00 +08:00 via iPhone   ❤️ 2
    就倒入一个包,包名你也不看看有多长,这叫优雅?
    sagaxu
        43
    sagaxu  
       2018-06-24 01:21:26 +08:00
    Java 写着罗嗦,Go 更罗嗦,但 JVM 不错,Scala 和 Kotlin 是不错的选择。

    Go 的确比 Java 省内存,但是内存不值钱啊,一个初中级开发,一个月的人力成本,至少能买 200G 内存了
    miketeam
        44
    miketeam  
       2018-06-24 01:22:20 +08:00 via iPhone
    java 开发工具集又烂,没有像 Xcode 或者 vs 这样工业级的 ide 支撑,写代码简直是要命。出了谷歌不到的 bug 一群人就傻逼了……不要说没遇到大牛,特么国内大牛也就那样,谷歌不到的 bug 也是一愣一愣的
    yylucifer
        45
    yylucifer  
       2018-06-24 01:24:50 +08:00
    Java 流行的时候,别人问的是“ Java 何时干掉 C/C++”
    MeteorCat
        46
    MeteorCat  
       2018-06-24 01:27:22 +08:00 via Android
    楼上说得对,C#以前天天说要替代 Java,最后 JD 还不是切回 Java
    feiyuanqiu
        47
    feiyuanqiu  
       2018-06-24 01:28:44 +08:00
    我现在工作就用着 go,反正这语言不合我胃口就是了
    xypcn
        48
    xypcn  
    OP
       2018-06-24 01:29:31 +08:00
    @cyspy graalVM 可以肯定它难以成功,项目太复杂,java native 的事,十年前就关注过,关注过好长一段时间,好多企业在做,最早的 microsoft java,ibm eclipse 有的项目也在做,google 也做过,一直没有做好,主要的问题在依赖,java 包的循环引用,而 golang 相对来说单一些,没有包循环引用问题。oracle 也是不思进取,一直不做 native,现在才开始做可能是害怕 golang 之类的兴起吧。
    cizeZSY
        49
    cizeZSY  
       2018-06-24 01:39:41 +08:00 via Android
    @miketeam Injellij Idea 很难用吗?它都不算工业级 ide ?
    incompatible
        50
    incompatible  
       2018-06-24 01:50:32 +08:00   ❤️ 1
    @xypcn 这个孰优孰劣还要看你起二十几个 go 进程是为了做什么。搞不好这些 go 进程做的事儿在一个 jvm 里写上二十几个 spring bean 就搞定了。
    fancyhan
        51
    fancyhan  
       2018-06-24 01:54:13 +08:00
    不构成竞争关系,两者并不是做一种事情的
    incompatible
        52
    incompatible  
       2018-06-24 01:57:41 +08:00   ❤️ 3
    @miketeam 你这话句句透着无知。Eclipse 不是工业级 IDE ?它可简直工业得不能再工业了。甚至很多工业界的产品都是基于 Eclipse 平台构建的(我见过的比如 IBM 的 ClearCase / ClearQuest、呼叫中心大厂 Avaya 的 IVR 流程编辑器)。
    JetBrains 的 Intellij IDEA 不是工业级编辑器? BABA、Google 这些大厂都在用的东西,我不明白你为什么对其视若无睹。也许是用不起?笑。


    “出了谷歌不到的 bug ”指的是什么东西出了 bug ? IDE ? JDK ?你用的 Xcode 或者 llvm 出了“谷歌不到的 bug ”你确定你能搞定?
    notreami
        53
    notreami  
       2018-06-24 01:59:53 +08:00   ❤️ 4
    都成年人了,还纠结什么编程语言?难道你们转另一种语言,能写 CURD 的程度,需要 1 个星期嘛??
    语法、内存等这些压根不叫问题。真正的问题是开发效率和故障定位。举个例子,cpu 突然出现高频使用,大家多久能觉察到并定位问题呢?
    x7395759
        54
    x7395759  
       2018-06-24 02:02:03 +08:00
    干不掉
    chocotan
        55
    chocotan  
       2018-06-24 02:21:39 +08:00
    @miketeam java 的 IDE 都不会用吗,也难怪你找入口找最终执行的地方能找半个小时了......
    20015jjw
        56
    20015jjw  
       2018-06-24 03:42:45 +08:00 via Android
    lz 活在梦里
    20015jjw
        57
    20015jjw  
       2018-06-24 03:44:33 +08:00 via Android
    @miketeam 你是来搞笑的吧 grep 都不要半小时 是有多无知
    Monstercat
        58
    Monstercat  
       2018-06-24 04:46:08 +08:00
    @miketeam 惊呆了 第一次听说 Java 工具集不行的 IDEA 和 Eclipse 哪个不比 Xcode/VS 强?
    wangxiaoaer
        59
    wangxiaoaer  
       2018-06-24 06:15:11 +08:00 via Android
    @blless 包管理 依赖管理 泛型 别扭的语法。
    wangxiaoaer
        60
    wangxiaoaer  
       2018-06-24 06:19:22 +08:00 via Android
    @miketeam 我原以为就我是个半吊子二把刀,没想到你比我还 2。
    janxin
        61
    janxin  
       2018-06-24 07:28:34 +08:00 via iPad
    wwqgtxx
        62
    wwqgtxx  
       2018-06-24 08:02:22 +08:00 via iPhone
    @miketeam java 这种严重依赖 ide 的软件居然说它没有工业级 ide,莫非你都是用 vim 在写呀
    clino
        63
    clino  
       2018-06-24 08:04:10 +08:00 via Android
    但工作上因放弃 java 吃了大亏

    这个楼主细说下?
    loongwang
        64
    loongwang  
       2018-06-24 08:06:12 +08:00   ❤️ 1
    语法繁琐,真正写代码需要多久?还不是设计花的时间最长
    mejee
        65
    mejee  
       2018-06-24 08:08:56 +08:00 via Android
    干掉是不可能的,除非你程序员上班不喝咖啡去玩老鼠
    beastk
        66
    beastk  
       2018-06-24 08:21:00 +08:00 via iPhone   ❤️ 4
    干掉又咋样,我还是用最强语言 php
    miketeam
        67
    miketeam  
       2018-06-24 09:05:54 +08:00 via iPhone
    你们是不是对工业级 ide 理解有误啊,能用就是工业级 ide ? ij 写 Java 代码你们是在安慰自己很好用吗
    fuxiaohei
        68
    fuxiaohei  
       2018-06-24 09:20:37 +08:00
    @miketeam 如果 Xcode 那种算工业级,要笑掉大牙。代码自动提示不正常,debug 弱爆,一天崩溃几十次。多得是帖子吐槽 xcode 各种问题
    baozijun
        69
    baozijun  
       2018-06-24 09:22:42 +08:00 via iPhone
    @miketeam 想到了微软 boy,在微软 boy 的心里,只有微软的产品才叫”生产力”,“工业级”。
    miketeam
        70
    miketeam  
       2018-06-24 09:25:12 +08:00 via iPhone
    @wangxiaoaer 我写 Java 代码时间不长,有些业务场景需要需要参考 Java 来写出 swift,Java 的工具集不吹不黑真是难用,
    v2orz
        71
    v2orz  
       2018-06-24 09:33:49 +08:00   ❤️ 1
    写了 10 年 java 楼主还能这么说,这到底是 10 年经验还是两年经验用十年?
    在没有特定场景下的重量级项目前(就像大数据或安卓上的 Java ),个人认为 Go 还是难以推广开来
    打包大小这种事,真的不会有太多人在乎的
    cyspy
        72
    cyspy  
       2018-06-24 09:51:12 +08:00 via Android
    @xypcn 我个人其实对 native 不感兴趣,主要是新的编译器把包袱扔掉之后,主流语言都能编译上去共享库资源。性能上 jvm 本身也不差,就是有个 jre 的包袱而已。
    janxin
        73
    janxin  
       2018-06-24 10:05:57 +08:00
    @v2orz 打包大小这种事,真的不会有太多(开发)人在乎的
    iRiven
        74
    iRiven  
       2018-06-24 10:21:48 +08:00 via Android   ❤️ 1
    那些都是次要 有生之年 go 来一个重量级的图形库,解决一下我的痛点,这样子就舒服很多了,但是看到 golang 的那些实验仓库关于 gui 的部分很久没有更新 真令人绝望
    nicevar
        75
    nicevar  
       2018-06-24 10:31:24 +08:00   ❤️ 1
    @miketeam 你自己写 Java 时间不长还喜欢胡扯,你要是说 vs 好用就还行,搬出 XCode 真是搞笑了,已经难用爱崩溃是出了名的,java 的 ide 无论是 eclipse 还是 idea 都甩 XCode 好几条街
    wuhanchu
        76
    wuhanchu  
       2018-06-24 10:35:35 +08:00
    js 和 php 都活的好着呢。java 没太大问题还能用很久
    sagaxu
        77
    sagaxu  
       2018-06-24 10:37:18 +08:00
    @xypcn GraalVM 完成度已经不错了,不但打包小的多,内存占用也小的多,Go 的两大优势就没有了
    https://vertx.io/blog/eclipse-vert-x-goes-native/
    https://sites.google.com/a/athaydes.com/renato-athaydes/posts/a7mbnative-imagejavaappthatrunsin30msandusesonly4mbofram

    @miketeam 不会用和难用,有时候连自己都无法区分。
    AngelCriss
        78
    AngelCriss  
       2018-06-24 10:40:51 +08:00 via Android
    @Mitt 解决是不可能的 cpp 远比 rust 好,作为第一批接触 rust 的人,我是深有体会。
    blless
        79
    blless  
       2018-06-24 10:43:25 +08:00 via iPhone
    @wangxiaoaer 包管理,依赖管理真不是事,没有泛型不代表不能开发了,楼上有个评论我觉得蛮到位的,出了问题可以快速定位故障才是好的。go 的 pprof 是我用起来最舒服的,配合火焰图工具简直不要太爽,go get/fmt/vet 工具链基本只要装个 go 环境就把项目管理需要的东西都带了,连 import 不用都编译错误,至少可以规避很多低级错误。语法糖太多,tab 空格互用,反而让项目不同成员代码风格迥异,我反而认为 go 正是为了大型项目一些痛点来解决问题的。
    lihongjie0209
        80
    lihongjie0209  
       2018-06-24 10:47:18 +08:00   ❤️ 1
    别老想着一些骚操作, 老老实实写 KISS 代码不好吗???
    lihongjie0209
        81
    lihongjie0209  
       2018-06-24 10:48:13 +08:00
    @blless #79 说到包管理我想到了 npm
    Cbdy
        82
    Cbdy  
       2018-06-24 10:48:37 +08:00 via Android
    我就想问问,写 go 项目,是不是要把用到的库源码 copy 下来? go 有模块化系统这个设计吗?
    ZSeptember
        83
    ZSeptember  
       2018-06-24 11:29:12 +08:00
    曾经我也是这么想的,做了一些项目以后,发现还是不可能的。
    golang 要做一些复杂点的业务太繁琐了,不过做一些微服务还是可以,但还是要写很多模版代码,只能用代码生成技术。
    个人的想法是自己的项目用 Go,公司的还是用 Java 吧。
    CFO
        84
    CFO  
       2018-06-24 11:39:38 +08:00 via Android
    @miketeam 自己无知 代码写的烂怪语言咯?
    xuhp
        85
    xuhp  
       2018-06-24 11:44:06 +08:00
    java 还能再苟十年
    wangxiaoaer
        86
    wangxiaoaer  
       2018-06-24 11:44:59 +08:00
    @blless #79 快速故障定位,java 配合 ide 没觉得哪里痛。
    import 这种仁者见仁吧,我认为是可以集成到版本控制中的,当然这个不算痛点,格式化同理。
    说到依赖管理,非开源项目怎么提供直接可用的 go 包?
    语法而言,写起来简直回到了蛮荒时代。map[string]interface{} 真的好看?


    ----------------------
    王垠批评 golang 的那篇文章,我觉得挺中肯。
    wwqgtxx
        87
    wwqgtxx  
       2018-06-24 11:47:01 +08:00 via iPhone
    @miketeam 说 ij 写代码还不好用的,还是回去老老实实的读读 help 文档吧,好吃只会骑自行车的说飞机功能弱爆了
    cocode
        88
    cocode  
       2018-06-24 11:54:43 +08:00 via Android
    怎么还有天天闹着要干掉 xxx 语言的啊,Java 是害你工作丢了么还是咋滴。。。
    breeswish
        89
    breeswish  
       2018-06-24 12:01:42 +08:00   ❤️ 1
    哈哈楼主竟然是为了「就不会有读什么源码,jvm 优化了」而想让 java 被 golang 干掉。那么 golang 的 gc 了解一下? golang channel 怎么实现的? goroutine 泄露了解一下? golang ffi cost 太大怎么办?换个语言照样有一堆你不知道的问题。
    tedzhou1221
        90
    tedzhou1221  
       2018-06-24 12:04:29 +08:00 via Android
    作为个人的吐槽还可以
    我现在要靠 java 吃饭,所以我很喜欢 JAVA
    woncode
        91
    woncode  
       2018-06-24 12:17:09 +08:00 via Android
    我觉得说 Java 繁琐、历史包袱大的,怕不是还停留在五六年前吧。
    用过 spring boot、spring cloud、spring data jpa 等 spring 的新项目吗,还是停留在认为 sping 家的东西只能做 ioc 和 aop,并且要使用 xml 做一大堆配置的年代。
    拜托,用上面的那些 spring 新项目、基于 java 注解配置,我不相信其他语言做 web 开发、curd 操作、微服务,还能更加轻便、配置更加少,而且是不管做大项目,还是小项目。
    并且 java 可是几乎全方位的解决方案都有,不想其他语言可能你在某个方面很爽,但是扩展了一点东西后可能发现自己得全部手写实现了。
    xypcn
        92
    xypcn  
    OP
       2018-06-24 12:22:17 +08:00
    @cocode java 是在浪费资源. 干掉什么什么是没意义,人要进步,社会也要进步。当然也有守旧的.
    一个人的精力是有限的,不可能同时用多个语言,就后台而已,java 的那些事 golang 完全可以取而代之.
    java 不做后台,除了 IDE,好象其它方面特别难用,开发 IDE 也是原因先发优势。
    java 现在的体系很庞大,确实很难死,除非有新的公司用 golang 取得巨大的的成就。
    现在成功的最有名是 docker.
    每年还有很多 java 的新生补充。
    用第二语言至少在精通一门语言之后,精通第一门语言至少需要 5 年时间,第二语言也至少需要 1 年以上,java 存在很长一段时间。
    如果 golang 与 java 都精通后,会发现微服务开发方面 golang 确实比 java 好很多倍,这个谁用谁知道,有些事情是没有比较就没有伤害,当然有这个感觉你至少工作了 6 年以上。
    Mitt
        93
    Mitt  
       2018-06-24 12:26:15 +08:00 via iPhone
    @AngelCriss 解决痛点跟比 cpp 好是两码事
    casillasyi
        94
    casillasyi  
       2018-06-24 12:30:34 +08:00 via Android
    未来可能是 rust,swift 和 kotlin 三足鼎立,java 暂时只可能被 kotlin 替代
    blless
        95
    blless  
       2018-06-24 12:33:33 +08:00 via iPhone
    @wangxiaoaer #86 我说的不是开发过程 debug,而是一些比如死循环,内存泄漏,goroutine 泄露之类排查,go 的 pprof 我感觉比别的语言做的好 而且简单易用。针对性优化,排查疑难杂症都很好用。说到这个我还想起来 go 的单元用例 /benchmark,相比其他语言都要第三方库支持也算友好易用。很多人写代码都不注重这些,但是项目管理里就很重要了。
    casillasyi
        96
    casillasyi  
       2018-06-24 12:35:21 +08:00 via Android   ❤️ 1
    至于先用层主一直强调的 java 干的事 go 都能干,还比你占用内存低。你就说哪一种静态语言有不能干的事吗?为了追求内存低,你为何不用 c 不用汇编?内存只是工具选择时的一方面,语言的设计,生态等等都很重要
    wangxiaoaer
        97
    wangxiaoaer  
       2018-06-24 12:41:14 +08:00
    @blless #95 pprof 这个东西我倒没有接触过,没有发言权啊。

    不过说起单元测试,感觉和源文件混在一起搞成文件爆炸,真不爽。

    越来越觉得王垠说 go 的设计者是一帮偏执狂还是有道理的。


    ----------------------

    我自己尝试过 go,但是写起来真的是感觉步步维艰,无从下手,python 也一样。

    java js 感觉就是可以闭着眼睛写,加上 IDE,简直要飞起。

    我对 java 唯一的抱怨就是包过大,spring 的项目动不动就上百兆(不是太大,但总归自动部署不便),频繁的重启也耗费时间,另外就是内存占用,虽然是白菜价了。

    go 的二进制发布,轻量安装包,双击运行,内存占据不大,很合我的口味,这也是当初尝试 go 的主要原因,可惜实在坚持不下去。
    woncode
        98
    woncode  
       2018-06-24 12:45:56 +08:00 via Android
    @xypcn 我觉得放着 java 全面的生态不用,而要重新去造轮子才是浪费资源呢。
    什么?要跟 java 比后台以外的领域?那看来只能认怂了,java 本来就是专注于后台领域。
    你想比前端?那去干掉 js 吧,你想比 ai ?那去干掉 python 吧?
    莫非这里说的 golang 干掉 java 不是在后台干掉 java 吗?还是说 golang 的目标是全领域的干掉所有语言,一统江湖?
    难道我们大伙都走错片场啦?😂
    CoderGeek
        99
    CoderGeek  
       2018-06-24 12:46:22 +08:00
    too young too native
    blless
        100
    blless  
       2018-06-24 12:49:08 +08:00 via iPhone
    @wangxiaoaer #97 2333,我只能说应该是八字不合了,测试用例我本身认为是另一种文档,是文本文档的补全,而且更直观 更高效,所以我觉得跟源码放一起是没有问题的。😂我对 nodejs 也有同样的感觉,压根不知道怎么写
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1055 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 18:14 · PVG 02:14 · LAX 10:14 · JFK 13:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.