Go 面试: 面试官问在 Go 语言的使用过程中, 遇到过什么样的问题

324 天前
 hzzhzzdogee

最近在尝试看找找新的机会, 连着面试了几家, 几乎都问了上述问题.

可能是我比较菜, 资历尚浅吧, 我好像没遇到过什么值得大书特书的情况.

面试过程中, 我试着从 Go 语言的特性入手回答:

  1. 避免运行过程中不可 recover 的 fatal error, 例如 map 的并发读写.
  2. 资源泄露的问题, context 的使用方面.
  3. 一些性能敏感场景的注意点, 例如序列化/反序列化, map/slice 的扩容等等.

听了我的回答后, 显然面试官并不满意.

想问问万能的 v 友, 这样的问题到底想问什么呢, 该如何回答才能让人满意呢?

3958 次点击
所在节点    程序员
26 条回复
tbxark
324 天前
@jorneyr 这个其实还好用`decoder.UseNumber()` 就能解决,不过这个不是默认行为罢了

```go

package main

import (
"encoding/json"
"strings"
)

func main() {
raw := `{ "age": 10 }`
var res map[string]any
decoder := json.NewDecoder(strings.NewReader(raw))
decoder.UseNumber()
err := decoder.Decode(&res)
if err != nil {
panic(err)
}
age := res["age"].(json.Number)
i, err := age.Int64()
if err != nil {
panic(err)
}
println(i)

}

```
picone
323 天前
@shadowyue 合格的面试官应该是会引导你说出他想听的东西,因为这是个沟通过程,大家都可能表述不清楚
zhengxw
323 天前
换一家公司,这种问题一般只用于饭后当笑话看。
phithon
323 天前
method 还不支持泛型
zxyphp
323 天前
说了你也听不懂
realpg
323 天前
我技术强,没遇到过什么问题。。。

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

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

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

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

© 2021 V2EX