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

写 golang 是真的爽,只是面试登记时,说是狗(go)工程师,前台小姐姐会很懵

  •  
  •   iamthegrad · 2021-06-29 09:32:08 +08:00 · 3153 次点击
    这是一个创建于 1229 天前的主题,其中的信息可能已经有所发展或是发生改变。
    哪些地方爽?

    1.直接编译可执行文件,非常方便写一些小工具,多系统转移

    2.协程轻量化,快速化是真的爽

    3.执行速度远比优秀于 Java,一个自带 GC 的 C 语言加强版

    4.语法简洁化,25 个语言关键字,避免程序员写出可读性差的代码,比如 go 没有三元运算符,虽然说三元运算符用起来舒服,但是部分魔性程序员会写出可读性很差的代码

    5.大家可以补充

    哪些地方不爽?

    1.大家补充
    iamthegrad
        1
    iamthegrad  
    OP
       2021-06-29 09:34:22 +08:00
    汇总了国内 golang 发展生态情况。



    https://mo.fish/main/search/golang
    securityCoding
        2
    securityCoding  
       2021-06-29 10:06:01 +08:00
    go 的确没有那么多花花肠子
    whatalittleboy
        3
    whatalittleboy  
       2021-06-29 10:06:05 +08:00
    说 goland 就不懵了
    rrZ2C
        4
    rrZ2C  
       2021-06-29 10:12:13 +08:00   ❤️ 5
    @iamthegrad

    好家伙 反正都是骗点击

    https://www.google.com.hk/search?q=golang 汇总了中文圈 golang 发展生态情况。
    fewok
        5
    fewok  
       2021-06-29 10:25:15 +08:00
    2021 年了,居然还有人标榜自己是 xxx 语言工程师?
    难道是 xxx 语言的发明者,还是核心维护人员?
    iamthegrad
        6
    iamthegrad  
    OP
       2021-06-29 10:29:12 +08:00   ❤️ 1
    @fewok 杠精,日常生活自称程序员,简历里面难道不是 某某工程师?
    iamthegrad
        7
    iamthegrad  
    OP
       2021-06-29 10:30:16 +08:00
    @securityCoding 25 个语言关键字,深得朕心,语言层面拒绝装逼代码
    8Cangtou
        8
    8Cangtou  
       2021-06-29 10:36:54 +08:00
    鸿蒙开发工程师!!!
    iamthegrad
        9
    iamthegrad  
    OP
       2021-06-29 10:40:38 +08:00
    @8Cangtou 你说的是安卓 10.0 工程师,花粉一枚
    pabupa
        10
    pabupa  
       2021-06-29 11:06:41 +08:00
    凡是多值的地方,最后一个元素换行之后要加`,`,……烦死了
    TOUJOURSER
        11
    TOUJOURSER  
       2021-06-29 11:31:43 +08:00
    error 地狱
    KousukeSakurako
        12
    KousukeSakurako  
       2021-06-29 11:51:26 +08:00   ❤️ 1
    把面向对象编程的几个槽点避免掉了, 比如组合而不应该继承
    面向接口编程写起来很爽
    测试写起来很方便
    gofmt 让你不用担心代码风格问题, 大家写出来的都是一样风格的代码
    轻量,60 行写出的 webdav 服务日常占用内存只有 5mb 左右的样子
    错误处理真的爽, 当然写起来丝毫不爽
    ikaros
        13
    ikaros  
       2021-06-29 12:20:30 +08:00
    你说你是 够浪(golang)工程师
    iamthegrad
        14
    iamthegrad  
    OP
       2021-06-29 12:27:07 +08:00
    @TOUJOURSER java 层层包裹 error,也不见得优雅
    IvanLi127
        15
    IvanLi127  
       2021-06-29 13:17:08 +08:00 via Android
    @fewok #5 所以应该怎么称呼?
    hj24
        16
    hj24  
       2021-06-29 14:13:03 +08:00
    @KousukeSakurako 测试写起来不方便吧,静态语言写测试都挺麻烦的
    zw1027
        17
    zw1027  
       2021-06-29 15:18:01 +08:00
    还好你不是撸啊( lua )工程师
    skies457
        18
    skies457  
       2021-06-29 15:41:39 +08:00
    if err != nil 爽吗(逃
    iamthegrad
        19
    iamthegrad  
    OP
       2021-06-29 16:42:16 +08:00
    @skies457 挺爽,错误立马处理,相比层层传递处理,也是一种优点吧
    prenwang
        20
    prenwang  
       2021-06-29 17:56:45 +08:00
    @iamthegrad

    大部分 go 的 error 也是向上层层传递的,

    java 开发经常用一个 try catch 把所有代码包起来,catch 多个分支

    而在 go 里,也可以用 panic recover 一次性处理, 并且返回错误

    看起来 java 的中规中矩,go 的方法比较魔幻

    ···
    func IntFromInt64(i64 int64) (i int, err error) {//这里
    defer func() {
    if err2 := recover(); err2 != nil {
    err = err2.(error)
    }
    }()
    i = 1
    panic(errors.New("xxx"))
    return i, nil
    }
    ···
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2670 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 01:45 · PVG 09:45 · LAX 17:45 · JFK 20:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.