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

2021-06-29 09:32:08 +08:00
 iamthegrad
哪些地方爽?

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

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

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

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

5.大家可以补充

哪些地方不爽?

1.大家补充
3055 次点击
所在节点    Go 编程语言
20 条回复
iamthegrad
2021-06-29 09:34:22 +08:00
汇总了国内 golang 发展生态情况。



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

好家伙 反正都是骗点击

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

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/786381

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX