Go 有哪些讓你相見恨晚的技巧?
我先來說兩個:
- 錯誤處理
不需要重複的檢測錯誤,通過最後的 error 來檢測
scanner := bufio.NewScanner(input) for scanner.Scan() { token := scanner.Text() // process token } if err := scanner.Err(); err != nil { // process the error }
- 測試處理
增加一個 test flag
var update = flag.Bool("update", false, "Update test fixtures") if *update { if err := os.MkdirAll(filepath.Dir(f.Path), 0700); err != nil { t.Error(err) return } else if err := ioutil.WriteFile(f.Path, f.Got, 0600); err != nil { t.Error(err) return } }
這樣如果你的測試是針對 1000 個不同資料的測試結果,就可以預想資料,把結果快取在 fixture 裡面go test -update
,後面再次修改邏輯或者測試的時候,只要執行go test
這樣就會比對結果和 fixture 裡面的資料結果,這樣就可以保證每次修改邏輯都是正確的。一旦結果不一致了就可以裡面看出來。
更多原創文章乾貨分享,請關注公眾號
- 加微信實戰群請加微信(註明:實戰群):gocnio
相關文章
- [轉]那些相見恨晚的 JavaScript 技巧JavaScript
- 10個讓你相見恨晚的iOS Swift動畫框架!iOSSwift動畫框架
- 5款可能讓你相見恨晚的高效軟體
- 相見恨晚的 MacBook 使用技巧「1」emoji表情賣萌Mac
- Android開發中,那些讓你相見恨晚的方法、類或介面Android
- Typora + Mathpix Snip,相見恨晚的神器
- 相見恨晚的超實用網站網站
- 5個相見恨晚的Linux命令Linux
- 相見恨晚的幾個Excel小技巧,簡單實用又高效!Excel
- 讓人相見恨晚的vim外掛:模糊查詢神器LeaderF
- 讓人相見恨晚的 VIM 外掛:模糊查詢神器 LeaderF
- 這款相見恨晚的開源商城,真的能商用!
- 3 個相見恨晚的 Google Colaboratory 奇技淫巧!Go
- [這段程式碼很Pythonic]相見恨晚的itertools庫Python
- 相見恨晚!開源的傻瓜搜尋引擎,幫你快速實現搜尋功能
- 5個相見恨晚的學習網站,每個都很良心,想要變強的你正好需要學習網站
- RazorEngine.NetCore 相見恨晚,它讓我徹底放棄了T4模板NetCore
- 5個相見恨晚的Linux命令,每一個都非常實用Linux
- 國人專案,上Github全球熱榜了!! 來瞅瞅,你會發現相見恨晚Github
- 6款相見恨晚的資源網站,每個都百裡挑一,送給正需要的你!網站
- 百科全書!相見恨晚!好書妙評之《親愛的介面:讓使用者樂於使用、愛不釋手》
- 再見,晚晚
- JAVA下唯一一款搞定OLTP+OLAP的強型別查詢這就是最好用的ORM相見恨晚Java型別ORM
- 《Java EE 開發技術與案例教程》 這是一本好書啊:簡潔精闢(相見恨晚)Java
- 10個說話技巧讓你的語言有魅力
- 說說你對圖的理解?相關操作有哪些?
- 你見過哪些優雅的 Java 程式碼最佳化技巧?Java
- 說說你對樹的理解?相關的操作有哪些?
- 面試成功的技巧有哪些?面試
- 常見的Linux系統有哪些?你知道嗎?Linux
- 說說你對集合的理解?常見的操作有哪些?
- Web前端學習技巧有哪些?本文給你答案Web前端
- 實用的幾種電腦技巧,有哪些你還不會?
- 用Golang做一個永久阻塞,你有哪些小技巧Golang
- 說說你對連結串列的理解?常見的操作有哪些?
- 常見的資料整合有哪些方法?有哪些分類?
- 有哪些Java原始碼看了後讓你收穫很多?Java原始碼
- Java面試常用到的技巧有哪些Java面試