後端開發

  • Go資深工程師講解(慕課) 001

    概覽 下載開發: vi emacs idea eclipse vs sublimeIde: GoLand,liteIDE默認 gopath ~/go/src 基本語法 變量定義使用 var,函數外定義可以使用括號的方式 package main import "fmt" //函數外定義要使用var var aa=3 var ss=&quo…

    23小時前
    100
  • Go工程師體系課 protoc-gen-validate

    protoc-gen-validate 簡介與使用指南 ✅ 什麼是 protoc-gen-validate protoc-gen-validate(簡稱 PGV)是一個 Protocol Buffers 插件,用於在生成的 Go 代碼中添加結構體字段的驗證邏輯。 它通過在 .proto 文件中添加 validate 規則,自動爲每個字段生成驗證代碼,避免你手…

  • 編程基礎 0010_Go底層原理與源碼精華

    Go 底層原理與源碼精華 基於《Go 源碼剖析》(雨痕, 第五版下冊)、《Go 1.4 runtime》、《Go 學習筆記 第四版》、《Golang 性能優化》、《Go Execution Modes》等資料整理,並補充現代 Go 版本的變化。 一、Go 編譯器與鏈接器 1.1 編譯流程概覽 Go 的編譯過程分爲以下階段: 源碼 (.go) --> 詞…

    後端開發 20小時前
    500
  • Go工程師體系課 protobuf_guide

    Protocol Buffers 入門指南 1. 簡介 Protocol Buffers(簡稱 protobuf)是 Google 開發的一種語言無關、平臺無關、可擴展的結構化數據序列化機制。與 JSON、XML 等序列化方式相比,protobuf 更小、更快、更簡單。 項目主頁:https://github.com/protocolbuffers/prot…

  • Go資深工程師講解(慕課) 003

    003 測試 吐槽別人家的,go語言採用表格驅動測試 測試數據和測試邏輯混在一些 出錯信息不明確 一旦一個數據出錯測試全部結束 表格驅動測試 test:=[]struct{ a,b,c int32 }{ {1,2,3}, {0,2,0}, {0,0,0}, {0,0,0}, {-1,1,0}, {math.MaxInt32,1,math.MinInt32},…

  • 編程基礎 0009_testing詳解

    Go testing 詳解 目錄 testing 包基礎 表格驅動測試 子測試 t.Run 基準測試 Benchmark 測試覆蓋率 TestMain httptest 包 Mock 和接口測試技巧 模糊測試 Fuzz 1. testing 包基礎 1.1 測試文件和函數命名規則 Go 測試遵循嚴格的命名約定: 測試文件以 _test.go 結尾(如 use…

    後端開發 20小時前
    100
  • 編程基礎 0008_標準庫進階

    Go 標準庫進階 系統整理 Go 標準庫中最常用的包,重點覆蓋 io、os、bufio、strings、time、fmt 等 1. io 包核心接口 Go 的 I/O 設計圍繞幾個核心接口展開,幾乎所有 I/O 操作都基於它們。 // 最基礎的兩個接口 type Reader interface { Read(p []byte) (n int, err er…

    後端開發 19小時前
    500
  • 編程基礎 0007_併發模式

    Go 併發模式 常見的 Go 併發設計模式,每個模式都有完整可運行示例和適用場景說明 1. Worker Pool 模式 固定數量的 worker goroutine 從共享的任務隊列中取任務執行,控制併發度。 package main import ( "fmt" "sync" "time" ) …

    後端開發 19小時前
    400
  • 編程基礎 0006_併發進階_sync包與Context

    併發進階:sync 包與 Context 一、sync 包詳解 1. sync.Mutex 與 sync.RWMutex // Mutex: 互斥鎖,同一時間只有一個 goroutine 能持有 var mu sync.Mutex var count int func increment() { mu.Lock() defer mu.Unlock() cou…

    後端開發 18小時前
    400
  • 編程基礎 0005_錯誤處理進階

    Go 錯誤處理進階 目錄 Go 錯誤處理哲學 error 接口本質 自定義錯誤類型 fmt.Errorf 與 %w 包裝錯誤 errors.Is 和 errors.As 哨兵錯誤模式 錯誤處理最佳實踐 實際項目中的錯誤處理模式 1. Go 錯誤處理哲學 1.1 與 try-catch 的根本區別 在 Java、Python、C++ 等語言中,異常處理依賴 t…

    後端開發 18小時前
    800
簡體中文 繁體中文 English