原创 聽說,99% 的 Go 程序員都被 defer 坑過

原文鏈接: 聽說,99% 的 Go 程序員都被 defer 坑過 先聲明:我被坑過。 之前寫 Go 專欄時,寫過一篇文章:Go 專欄|錯誤處理:defer,panic 和 recover。有小夥伴留言說:道理都懂,但還是不知道怎麼用,而且還

原创 gRPC,爆贊

原文鏈接: gRPC,爆贊 gRPC 這項技術真是太棒了,接口約束嚴格,性能還高,在 k8s 和很多微服務框架中都有應用。 作爲一名程序員,學就對了。 之前用 Python 寫過一些 gRPC 服務,現在準備用 Go 來感受一下原汁原味的

原创 使用 grpcurl 通過命令行訪問 gRPC 服務

原文鏈接: 使用 grpcurl 通過命令行訪問 gRPC 服務 一般情況下測試 gRPC 服務,都是通過客戶端來直接請求服務端。如果客戶端還沒準備好的話,也可以使用 BloomRPC 這樣的 GUI 客戶端。 如果環境不支持安裝這種 GU

原创 被 Docker 日誌坑慘了

原文鏈接: 被 Docker 日誌坑慘了 最近在讀《計算機程序的構造和解釋》,裏面有一句話:代碼必須能夠被人閱讀,只是機器恰巧可以執行。 我也想到了一句話:BUG 一定能夠被人寫出,只是恰好我寫的多而已。 說多了都是淚,來看看我最近遇到的一

原创 Go 專欄|併發編程:goroutine,channel 和 sync

原文鏈接: Go 專欄|併發編程:goroutine,channel 和 sync 優雅的併發編程範式,完善的併發支持,出色的併發性能是 Go 語言區別於其他語言的一大特色。 在當今這個多核時代,併發編程的意義不言而喻。使用 Go 開發併發

原创 推薦三個實用的 Go 開發工具

原文鏈接: 推薦三個實用的 Go 開發工具 孫悟空在花果山稱王的時候,特意去了一趟東海,在那裏淘到了如意金箍棒。因爲身爲一個山大王,怎麼能沒有一件趁手的兵器呢? 作爲程序員的我們也一樣,除了我們的傍身武器 Ctrl C + V 之外,還要

原创 Go 專欄|函數那些事

原文鏈接: Go 專欄|函數那些事 曾經很長一段時間,我都爲自己是互聯網科技公司的一員而感到自豪,我覺得我們與衆不同。 我們的管理更扁平化,沒有那麼多官僚主義,充滿活力,朝氣蓬勃。而且我們的產品正在改變大家的衣食住行,我們正在改變世界。

原创 Go 專欄|說說方法

原文鏈接: Go 專欄|說說方法 最近又搬家了,已經記不清這是第幾次搬家了。搬到了公司附近,走路十分鐘,以後加班可方便了。 這一篇來說一說方法,方法可以看作是某種特定類型的函數,是 Go 面向對象編程的第一步。用好方法,具備面向對象編程思

原创 Go 專欄|流程控制,一網打盡

原文鏈接: Go 專欄|流程控制,一網打盡 最近看奧運會看的我熱血沸騰,中國奧運健兒簡直太棒了,不只是成績,還有氣質,精氣神,全方位的棒。 而且這次奧運會我覺得最感動的是,看到一些年紀大的運動員拿了好成績:呂小軍 37 歲,馬龍 32,蘇

原创 Go 專欄|接口 interface

原文鏈接: Go 專欄|接口 interface Duck Typing,鴨子類型,在維基百科裏是這樣定義的: If it looks like a duck, swims like a duck, and quacks like a

原创 Go 專欄|錯誤處理:defer,panic 和 recover

原文鏈接: Go 專欄|錯誤處理:defer,panic 和 recover 最近校招又開始了,我也接到了一些面試工作,當我問「你覺得自己有什麼優勢」時,十個人裏有八個的回答裏會有一條「精力充沛,能加班」。 怪不得國家都給認證了:新生代農

原创 這個 TCP 問題你得懂:Cannot assign requested address

原文鏈接: 這個 TCP 問題你得懂:Cannot assign requested address 微信羣裏一陣騷動,響聲震天。 我心想,雖然是週五,並且到了下班點,但也不至於這麼興奮吧。 打開微信一看,心涼半截,全是報系統 403 錯誤

原创 Go 專欄|複合數據類型:字典 map 和 結構體 struct

原文鏈接: Go 專欄|複合數據類型:字典 map 和 結構體 struct 樓下新開了一家重慶砂鍋肥腸,擴音喇叭一直在放:正宗的老重慶砂鍋肥腸,麻辣可口,老巴適了。 正不正宗不知道,反正聽口音,我以爲我回東北了。 本篇介紹複合數據類型的最

原创 Go 專欄|開發環境搭建以及開發工具 VS Code 配置

原文鏈接: Go 專欄|開發環境搭建以及開發工具 VS Code 配置 Go 專欄的第一篇,想學 Go 的同學們,走起~ Go 安裝 我的個人電腦是 Mac,然後工作主要使用 Linux,所以在這裏主要介紹在這兩個系統下的安裝。 下載地址

原创 Go 專欄|基礎數據類型:整數、浮點數、複數、布爾值和字符串

原文鏈接: Go 專欄|基礎數據類型:整數、浮點數、複數、布爾值和字符串 Go 專欄的第三篇,本文內容依舊很基礎,很簡單。如果有編程經驗的話,可能掃一眼就瞭然於胸了。但如果剛開始接觸編程,建議還是好好看看,把文中的代碼 demo 都自己跑