• 最近对 AI 一些思考

    · AI
    1. 前后端界限将进一步模糊,开发者将同时承担更多职责?
    2. 当 AI 成为工作常态后,老板是否会期望“估时减半”?
  • 初学 GO,发现语法很简约

    · Go

    Go

    最近在学习 Go 语言,它的语法非常简约。

    比如下面的代码:

    go func() {
      defer func() {
        if err := recover(); err != nil {
          ro.Logger.Error("asset maintainer error:", err)
        }
      }()
      // 这里是业务逻辑
    }

    在了解语法后,我发现他的语法相对于 JS 来说是很简化的

    1. 第一个就是他甚至连 function 都懒得写全…😅
    2. 也有类似于 JS 的立即执行函数 func() {…}。
    3. if 并声明+赋值,把两行代码合并成一行了(JS 也可以在 if 中赋值但是不能在 if 中声明)。
    4. err: 就等同于 JS 的 let err = recover()。(这是 let 都懒得写了😅)。

    JS

    如果上面的代码在 JS 中 1:1 还原可能是这样的:

    ;(async () => {
      ;(() => {
        const err = maybeThrow() // 模拟 recover 场景
        if (err) {
          logger.error('asset maintainer error:', err)
        }
      })()
      /// 这里是其他代码逻辑
    })()