错误处理

目录

错误处理一直是Go语言中饱受诟病的一点,类似这样:

func OpenFile(path string) (*os.File, error) {
    if f, err := os.Open(path); err != nil {
        return nil, err
    } else {
        return f, nil
    }
}

当然,上面的例子可以写的更简单,为了展示异常处理,因此写成这样。

而Python中是这样写:

try:
    open(path)
except FileNotFoundError:
    pass

表面上看不出什么太大的区别,但实际上当调用层次深了之后,try...except... 的这种形式会比Go语言返回error的形式简单明了的多。



更多文章
  • 后端工程师学前端(三): CSS进阶(特指度、单位和字体族)
  • 后端工程师学前端(二): CSS基础知识(规则与选择器)
  • Swift语法笔记
  • 后端工程师学前端(一): HTML
  • 读《管理的实践》
  • frp 源码阅读与分析(二):TCP内网穿透的实现
  • 五天不用微信 - 爽得很
  • frp 源码阅读与分析(一):流程和概念
  • 学习frp源码之简洁的在两个connection之间转发流量
  • 自己动手写一个反向代理
  • 读《债务危机》
  • 从XMonad迁移到i3
  • 服务器IP被ban学到的经验
  • socks5 协议详解
  • 开启HSTS(HTTP Strict Transport Security)