精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Go 錯誤處理的爭論,終于有了結論!

開發 前端
實際上 Go 這一門編程語言的 Go 錯誤處理機制,一直處于用戶調查中的風頭浪尖。但是會在互聯網上發聲的僅僅是一部分人。

大家好,我是煎魚。

對于 Go 這一門編程語言,Go 核心團隊的成員自己心里也非常有數,持續最久的吐槽就是錯誤處理的冗長。

當然,從我們的角度來看,社區還存在對于 Go 錯誤處理現有機制不滿意的情況。

近期 Go 官方發表了《[ On | No ] syntactic support for error handling[1]》正式宣布對錯誤處理機制的想法和后續表態。今天分享給大家。

Go1 錯誤處理的 “冗長” 例子

Go 的 if err != nil 的最短例子如下:

x, err := call()
if err != nil {
        // handle err
}

更常見的代碼例子如下:

func printSum(a, b string) error {
    x, err := strconv.Atoi(a)
    if err != nil {
        return err
    }
    y, err := strconv.Atoi(b)
    if err != nil {
        return err
    }
    fmt.Println("result:", x + y)
    return nil
}

這個函數大概只有 10 余行,但是實際上只有 3-4 行在實際上做邏輯調用和處理,剩余的 6 行都在處理 err 變量的冗余。

這樣的冗長,就是為什么有關錯誤處理的吐槽排在每年的 Go 開發者調查報告前列的緣由。

圖片圖片

這樣一看,其實就是 Go1 自帶的錯誤處理方式和機制,就是會被一部份同學瘋狂吐槽的(也有支持的)

圖片圖片

非常見仁見智了。

Go 核心團隊的多輪嘗試

Go 核心團隊瘋狂表示多人在多年做過多輪的積極嘗試。

最早可以追溯到 2018 年,時任團隊負責人的 @Russ Cox 想將該問題的優化放進 Go2 的大籃子里一起解決了。

團隊中的 @Marcel van Lohuizen 提出了《Error Handling — Draft Design[2]》的提案,示例代碼如下:

// printSum implementation using the proposed check/handle mechanism.
func printSum(a, b string) error {
    handle err { return err }
    x := check strconv.Atoi(a)
    y := check strconv.Atoi(b)
    fmt.Println("result:", x + y)
    return nil
}

但,這被認為太復雜。又沒有辦法繼續推進。僵持住了。

隨后在 2019 年,根據新的 try 提案《Proposal: A built-in Go error check function, try[3]》又做了改善。

示例代碼如下:

// printSum implementation using the proposed try mechanism.
func printSum(a, b string) error {
    // use a defer statement to augment errors before returning
    x := try(strconv.Atoi(a))
    y := try(strconv.Atoi(b))
    fmt.Println("result:", x + y)
    return nil
}

但是由于在出現錯誤時,可能會出現在深度嵌套誘發 try,以及 try 會打亂控制流的問題。導致許多人我無法接受 try 提案。并成功被稱為:“臭名昭著”。最終被迫放棄。

又經過多年的折騰,@Ian Lance Taylor 參考 Rust 發布了新的提案《proposal: spec: reduce error handling boilerplate using ?[4]》。

示例代碼如下:

// printSum implementation using the proposed "?" statements.
func printSum(a, b string) error {
    x := strconv.Atoi(a) ?
    y := strconv.Atoi(b) ?
    fmt.Println("result:", x + y)
    return nil
}

實際上 @Ian Lance Taylor 還做了小型的用戶實操實驗,當時絕大部分參與者都能夠意識到 ? 的作用是什么。他才敢放心(有信心)繼續推進。

但是依然很不幸,這個提案依然被很多的建議和想法給淹沒。沒法得出一個最終的最優解。

由此,Go 核心團隊的 10+ 年對于錯誤處理機制探討的推進。被迫暫告一段落。甚至引發了 Go 團隊很多的 “反思”。

最終結論(階段性)

Go 核心團隊認為,其在過去那么多年,一共提出了 3 個成熟的提案和數百個社區提案。但是這些所有的提案,都未能夠得到足夠的社區支持。

最終(2025 年)Go 官方將決定停止嘗試解決錯誤處理機制的問題。給出的理由是提案流程里的:

圖片圖片

“提案流程的目標是及時就結果達成普遍共識。如果提案審查無法在問題跟蹤器上的問題討論中達成普遍共識,通常的結果就是拒絕提案?!?/p>

同時有兩個非常扎心的事實:

  • 截止至目前,沒有任何一個錯誤處理提案達成共識。全部無一例外都被拒絕了。
  • Google Go 團隊的資深成員們,也沒有達成最佳的前進共識。(沒有強而有力的共識)

說白了。就是搞不定。沒有最佳的錯誤處理方式。且消耗了太大的精力和時間,官方團隊自己也沒有達成共識。

圖片圖片

在 2025 年 6 月做出了最終的決定:“在可預見的將來,Go 語言團隊將停止針對錯誤處理的語法修改。我們還將關閉所有主要涉及錯誤處理語法的開放式提案和新提案,不再進行進一步調查。”

總結

實際上 Go 這一門編程語言的 Go 錯誤處理機制,一直處于用戶調查中的風頭浪尖。但是會在互聯網上發聲的僅僅是一部分人。

但在現實和其他沒發聲的人里,也有很多支持 Go 不需要改變語法,直接還是用現在的 if err != nil 。也是存在非常多的支持者。(這一點官方在 Google Cloud Next 2025 做了個小型聚會進行了相關討論)

從現實來講,Go 核心團隊感覺非常想找到一個完美的錯誤處理機制,但現階段來看,正因為想一碗水都端平。似乎都無法解決??赡苓€是需要當年 rsc 力推 go module 時的決心。

但很可惜,現在和社區最為親近的 ian 也已經離職了,一時半會肯定不會有所改善的了。

參考資料

[1] [ On | No ] syntactic support for error handling: https://go.dev/blog/error-syntax

[2] Error Handling — Draft Design: https://go.googlesource.com/proposal/+/master/design/go2draft-error-handling.md

[3] Proposal: A built-in Go error check function, try: https://go.googlesource.com/proposal/+/master/design/32437-try-builtin.md

[4] proposal: spec: reduce error handling boilerplate using ?: https://github.com/golang/go/issues/71203

責任編輯:武曉燕 來源: 腦子進煎魚了
相關推薦

2014-11-17 10:05:12

Go語言

2021-04-29 09:02:44

語言Go 處理

2025-06-06 06:45:54

2022-09-05 08:55:15

Go2提案語法

2025-09-05 01:55:00

Go并發錯誤項目

2025-03-31 00:29:44

2021-09-13 07:53:31

Go錯誤處理

2021-09-27 10:04:03

Go程序處理

2023-10-26 15:49:53

Go日志

2021-09-27 23:28:29

Go多協程并發

2021-09-27 15:33:48

Go 開發技術

2020-12-17 06:25:05

Gopanic 模式

2017-09-22 15:25:40

Go語言其他語言錯誤處理

2021-04-14 07:08:14

Nodejs錯誤處理

2023-03-10 08:48:29

2024-02-28 08:54:57

switchGo錯誤

2024-03-27 08:18:02

Spring映射HTML

2013-01-22 10:54:51

HTML5App移動應用

2022-08-01 08:48:39

Go代碼接口

2022-07-13 08:53:28

函數Go語言
點贊
收藏

51CTO技術棧公眾號

欧美日韩一区二区三区四区| 中文字幕av播放| 国产成人无吗| 不卡影院免费观看| 欧美自拍大量在线观看| 国产精品嫩草69影院| 日韩xxx视频| 婷婷精品进入| 精品国产免费人成电影在线观看四季| 又粗又黑又大的吊av| 一区二区三区视频网站| 国产精品一区二区久激情瑜伽| 国产精品性做久久久久久| 超在线视频97| 在哪里可以看毛片| 欧美一区在线观看视频| 欧美性猛交xxxxx免费看| 中文字幕在线亚洲精品| 亚洲 美腿 欧美 偷拍| 久久99精品久久久久婷婷| 欧美亚洲国产日韩2020| 国产av 一区二区三区| 色综合综合色| 亚洲国产日韩欧美在线动漫| 午夜国产福利在线观看| 免费亚洲电影| 人人狠狠综合久久亚洲婷婷| 亚洲成人原创| 自拍亚洲一区欧美另类| 给我看免费高清在线观看| 一区二区三区| 欧美丝袜丝交足nylons| 国产亚洲天堂网| 激情在线视频播放| 亚洲天堂免费在线观看视频| 日韩精品久久久| 午夜国产在线视频| 国产成人啪免费观看软件| 国产美女久久精品| 国产精品第5页| 亚洲国产专区| 欧美精品videosex极品1| www.毛片com| 99久久99视频只有精品| 一区二区中文字幕| 欧美黄色一级生活片| 日韩av字幕| 亚洲国产精品热久久| 久久人人爽人人爽| 亚洲成色www8888| 中文字幕第22页| 天天综合91| 欧美视频三区在线播放| 欧美精品一区二区三区免费播放| 野外做受又硬又粗又大视频√| 99久久精品国产亚洲| 91久久黄色| 97在线视频免费播放| 国产午夜精品一区二区理论影院| 狠狠综合久久av一区二区老牛| 欧美精品制服第一页| 亚洲国产精品免费在线观看| 91精品1区| 欧美成人网在线| 久久久久人妻一区精品色欧美| 自拍日韩欧美| 国产做受69高潮| 日韩手机在线观看| 91亚洲精品久久久久久久久久久久| 亚洲午夜福利在线观看| 你微笑时很美电视剧整集高清不卡| 亚洲精品美女在线观看| 日本高清www| 欧美日韩中文字幕一区二区三区| 中文字幕亚洲欧美| 久久精品一区二区三区四区五区| 亚洲自拍偷拍网| 韩国日本不卡在线| 中文人妻av久久人妻18| 亚洲国产精品一区二区久久hs| 日韩av字幕| 国产亚洲精品高潮| 婷婷社区五月天| 亚洲激情偷拍| 国产成人精品一区二区三区| 91一区二区视频| 成人一区在线看| 欧美日韩电影一区二区三区| √新版天堂资源在线资源| 亚洲欧美激情插| 国产91在线免费| 成人一区视频| 精品999在线播放| 四虎国产精品成人免费入口| 国产精品88久久久久久| 国内揄拍国内精品少妇国语| 中文字幕激情视频| 成人午夜视频免费看| 日韩欧美三级一区二区| av中文字幕在线观看| 色一情一伦一子一伦一区| 99日在线视频| 亚洲精品合集| 欧美黑人国产人伦爽爽爽| 中文字幕精品视频在线观看| 国产精品18久久久久久久久久久久 | 精品国产一区二区精华| 午夜精产品一区二区在线观看的| 在线中文字幕亚洲| 成人高清免费观看| 欧美亚洲视频在线观看| 国产精品jizz在线观看美国| 日韩精品中文字幕在线观看| 国产黄a三级三级| 激情av一区| 国产日韩欧美一二三区| 青青九九免费视频在线| 亚洲精品日韩一| 少妇黄色一级片| 日韩免费电影在线观看| 九九久久久久久久久激情| 加勒比在线一区| 99视频一区二区三区| 最新av网址在线观看| 四虎影视4hu4虎成人| 日韩精品中文字幕视频在线| 欧美片一区二区| 国产一区二区三区蝌蚪| 亚洲在线欧美| 99久久久国产精品免费调教网站 | 亚洲欧美自偷自拍另类| 欧美日韩导航| 久久久免费精品视频| 国产乱色精品成人免费视频| 国产清纯在线一区二区www| 狠狠97人人婷婷五月| 久久aimee| 久久久综合免费视频| 亚洲AV无码精品色毛片浪潮| av在线免费观看网| 亚洲一区二区在线免费看| 中文字幕第一页在线视频| 在线免费观看av网| jizz亚洲女人高潮大叫| 亚洲全黄一级网站| 一级片免费在线播放| 99精品视频免费在线观看| 丝袜人妻一区二区三区| 成人av资源网址| 久久久久久中文| 手机在线精品视频| 欧美日韩激情网| 久久人人爽人人人人片| 99精品国产在热久久婷婷| 国产在线精品二区| 成人性生交大片免费看网站| 精品黑人一区二区三区久久| 精品视频在线观看免费| 不卡电影一区二区三区| 日本在线xxx| 免费电影一区二区三区| 国产成人高清激情视频在线观看| 青青草在线播放| 一本久久a久久免费精品不卡| 亚洲人成毛片在线播放女女| 九九久久综合网站| 亚洲精品一区二区口爆| 亚洲国产成人av好男人在线观看| 无码国产精品一区二区免费式直播| 亚洲调教视频在线观看| 亚洲图片自拍偷拍| 日韩欧美xxxx| 天天插天天干天天操| 亚洲二区在线观看| 亚洲成人日韩在线| 日本不卡123| 一本久道久久综合狠狠爱亚洲精品| 日韩黄色碟片| 久久91精品国产91久久久| 亚洲精品中文字幕成人片 | 亚洲aa在线观看| 免费在线观看的电影网站| 精品剧情v国产在线观看在线| 日韩 欧美 综合| 国产视频一区在线观看| 五月天开心婷婷| 亚洲激情国产| 午夜精品一区二区三区在线观看| 日韩欧美中文在线观看| 欧美亚洲国产精品| 国产黄a三级三级三级av在线看 | 国产在线综合视频| 国产精品亚洲人在线观看| 免费高清在线观看免费| 欧美gayvideo| 久久久久久亚洲精品不卡4k岛国| 本网站久久精品| 97婷婷涩涩精品一区| 麻豆网在线观看| 亚洲精品国产综合区久久久久久久| 美女亚洲精品| 国产成年精品| 国产91亚洲精品| 东北少妇不带套对白| av影片在线| 色爱精品视频一区| 日本韩国精品一区二区| 日韩精品一区二区三区三区免费| 色老头在线视频| 午夜视频在线观看一区二区三区| 欧美日本久久| 51色欧美片视频在线观看| yourporn在线观看视频| 精品国产网站在线观看| 亚洲中文字幕一区二区| 色综合天天在线| 国产一级免费av| 国产精品成人免费精品自在线观看| 亚洲中文字幕一区| 国产成人鲁色资源国产91色综| 日韩av片网站| 久久精品国语| www.日本在线播放| 亚洲欧美综合| 91亚洲精选| 欧美色大人视频| 懂色av.com| 夜夜嗨av一区二区三区网页| 美国精品一区二区| 日本一区二区在线观看视频| 日韩精品首页| 蜜桃成人免费视频| 少妇高潮喷水在线观看| 国产精品一区二区av日韩在线| 国产精品加勒比| 一区二区三区免费在线看| 国产一区香蕉久久| 91av一区| 国产精品成久久久久三级| 亚洲人成在线网站| 91精品国产高清久久久久久| 狂野欧美激情性xxxx欧美| 欧美成人激情在线| 最新超碰在线| 久久国产精品久久国产精品| 菠萝菠萝蜜在线视频免费观看| 色婷婷综合成人| 一本一道波多野毛片中文在线 | 永久免费黄色片| 蜜臀av性久久久久av蜜臀妖精| 日日碰狠狠丁香久燥| 视频一区欧美日韩| 污版视频在线观看| 狠狠网亚洲精品| 亚洲va欧美va人人爽成人影院| 中文字幕亚洲情99在线| www.亚洲.com| 日韩中文字幕在线观看| 久久草视频在线| 亚洲图片欧美视频| 日本少妇xxxx动漫| 天天做天天摸天天爽国产一区 | 在线激情网站| 国产婷婷精品| 欧美午夜性视频| 国产精品久久久久久久久久妞妞| 国产淫片免费看| 首页欧美精品中文字幕| 中文字幕乱码久久午夜不卡| 久久久久中文字幕亚洲精品| 成人精品免费视频| 少妇按摩一区二区三区| 国产日韩欧美制服另类| 五月激情四射婷婷| 亚洲女与黑人做爰| 风间由美性色一区二区三区 | 裸体一区二区| 午夜免费高清视频| 国产精品高清无码在线观看| 国产成人在线免费观看| 精品一区二区三区四区五区六区| 97se亚洲国产综合在线| 免费黄在线观看| 一区二区三区四区高清精品免费观看| 日本系列第一页| 欧美伊人精品成人久久综合97| 国产手机精品视频| 日韩经典中文字幕| 男女啪啪在线观看| 久久久久久一区二区三区| 激情亚洲影院在线观看| 91ts人妖另类精品系列| 国产精品美女视频| 激情四射综合网| 色哟哟国产精品免费观看| 国产又粗又猛又黄| 亚洲精品福利在线观看| 在线中文资源天堂| 久久久亚洲成人| 九九热这里有精品| 精品乱色一区二区中文字幕| 97视频热人人精品免费| 婷婷无套内射影院| 久久99精品久久久| av无码av天天av天天爽| 国产精品国产三级国产aⅴ入口| 日韩免费av片| 色橹橹欧美在线观看视频高清 | 日韩黄色大片网站| www插插插无码视频网站 | 91香蕉嫩草影院入口| 婷婷国产精品| 日韩一级特黄毛片| 热久久久久久久| 污污内射在线观看一区二区少妇 | 欧美在线高清视频| 丁香花免费高清完整在线播放| 色综久久综合桃花网| 原纱央莉成人av片| 国产日韩欧美一区二区| 综合色一区二区| 日本中文字幕精品—区二区| 久久综合九色综合欧美亚洲| 久久免费视频精品| 4438x亚洲最大成人网| 国产女主播在线写真| 57pao国产精品一区| 国产美女撒尿一区二区| 日本一级黄视频| 国产精品中文有码| 成人在线观看高清| 欧美日韩一级黄| h网站在线免费观看| 日本精品中文字幕| 亚洲欧洲av| 无码精品a∨在线观看中文| av一区二区三区在线| 日韩精品在线不卡| 亚洲国产成人精品女人久久久| 欧美人与牲禽动交com| 成人片在线免费看| 欧美日韩一区二区高清| 波多野结衣电影免费观看| 亚洲乱码国产乱码精品精98午夜| 一级特黄aaaaaa大片| 久久久av一区| 久久在线观看| 精品免费久久久久久久| 国产精品一级在线| 久久久久久天堂| 亚洲黄色成人网| 神马久久午夜| 欧美一级二级三级| 日本美女视频一区二区| 国产又粗又猛又爽又黄的视频四季| 欧美性猛交xxxxxxxx| 天天在线视频色| 91亚洲精品一区| 成人美女大片| 欧美日韩中文另类| 日本ー区在线视频| 日韩av片电影专区| 成人三级视频| 91精品999| 一区二区三区丝袜| 熟妇人妻av无码一区二区三区| 欧美性视频在线| 日韩黄色大片| 成人啪啪18免费游戏链接| 精品成人久久av| 国产小视频在线观看| 91久久精品国产91性色| 一区在线免费| 中文字幕成人动漫| 欧美日本在线看| a国产在线视频| 亚洲成色www久久网站| 国产一区不卡在线| 国产又黄又粗又爽| 中文字幕久久精品| 2020最新国产精品| 日本成人黄色网| 一区二区三区在线视频免费| 无码精品黑人一区二区三区| 国产精品美女主播| 好看的亚洲午夜视频在线| 亚洲AV无码片久久精品| 日韩一区二区三区视频在线| 欧美裸体视频| 国产91av视频在线观看| 91在线播放网址| 国产精品爽爽久久久久久| 91国产高清在线| 五月精品视频| 老牛影视av老牛影视av| 日韩欧美一二三| 国产黄色一区| 精品中文字幕av| 亚洲九九爱视频| porn亚洲|