Go 是 Google 開發的一種靜態強類型、編譯型、併發型,並具有垃圾回收功能的編程語言。
本期技術週刊一起了解 Go,歡迎大家閲讀 ~
文章推薦
Golang 如何優雅接入多個遠程配置中心? // 王中陽Go
viper是適用於go應用程序的配置解決方案,這款配置管理神器,支持多種類型、開箱即用、極易上手。
本地配置文件的接入能很快速的完成,那麼對於遠程apollo配置中心的接入,是否也能很快速完成呢?如果有多個apollo實例都需要接入,是否能支持呢?以及apollo遠程配置變更後,是否能支持熱加載,實時更新呢?
【Go 基礎篇】徹底搞懂 Channel 實現原理 // 程序員祝融
最近大傢俬信我讓我説説 Go 語言中的 Channel,有的人已經開始準備面試,真快呀!今天我們就來説説 Channel嗎,日常開發中使用也是比較頻繁的,面試也是高頻。聽我慢慢説來。
Channel (通道) 是 Go 語言高性能併發編程中的核心數據結構和與 Goroutine 之前重要的通信方式。在 Go 語言中通道是一種特殊的類型。通道像一個傳送帶或者隊列,遵循先入先出(First In First Out)的規則,保證收發數據的順序。
PHP 轉 Go 實踐:xjson 解析神器「開源工具集」 // 王中陽Go
xutil:今天分享的文章源自於開源項目jinzaigo/xutil的封裝。
在封裝過程中,勁仔將實現原理以及相關實踐思考,寫成文章分享出來,從而彙總系列文章集合。
PHP轉Go:我和勁仔都是PHP轉Go,身邊越來越多做PHP的朋友也逐漸在用Go進行重構,重構過程中,會發現php的json解析操作(系列化與反序列化)是真的香,弱類型語言的各種隱式類型轉換,很大程度的減低了程序的複雜度。
反觀go使用標準庫encoding/json,來做json解析就沒有那麼愉快了(只要數據類型定義不對,就很容易拋error)
寫給 go 開發者的 gRPC 教程-通信模式 // liangwt
前文提到過 protobuf 協議是平台無關的。演示的客户端和服務端都是 golang 的,即使客户端和服務端不同語言也是類似的可以通信的
對於上面介紹的的這種類似於 http1.x 的模式:客户端發送請求,服務端響應請求,一問一答的模式在 gRPC 裏叫做 Simple RPC (也稱 Unary RPC)。gRPC 同時也支持其他類型的交互方式。
Go 語言解析 JSON // 宇宙之一粟
本文將説明如何利用 Go 語言將 JSON 解析為結構體和數組,如果解析 JSON 的嵌入對象,如何將 JSON 的自定義屬性名稱映射到結構體,如何解析非結構化的 JSON 字符串。
你不知道的 goland 技巧 // 阿兵雲原生
很多人使用 Goland 有很長時間的,卻沒有好好利用上 Goland 工具帶給我們的遍歷,今天咱們就來解鎖一下新技巧
過去我們使用 Goland 就是簡單的配置一下 go 的 proxy ,以及配置一下 ssh ,與服務器進行文件的上傳和下載,其餘的技巧也就沒有費心去嘗試挖掘和使用了,有沒有同感的童鞋
用 Go 做一個小遊戲
一起用Go做一個小遊戲(上) // darjun
最近偶然看到一個 Go 語言庫,口號喊出“一個超級簡單(dead simple)的 2D 遊戲引擎”,好奇點開了它的官網。
這些瞬間讓我產生了極大的興趣。簡單瀏覽一下文檔,整體感覺下來,雖然與成熟的遊戲引擎(如Cocos2dx,DirectX,Unity3d等)相比,ebiten功能還不算豐富。但是麻雀雖小,五臟俱全。ebiten的API設計比較簡單,使用也很方便,即使對於新手也可以在1-2個小時內掌握,並開發出一款簡單的遊戲。更妙的是,Go語言讓ebitengine實現了跨平台!
接下來的3篇文章,我會介紹ebitengine這個庫。對於遊戲引擎來説,只介紹它的API用法似乎有點紙上談兵。恰好我想起之前看到一個《外星人入侵》的小遊戲,剛好可以拿來練手。那請大家坐穩扶好,我們出發咯。
一起用Go做一個小遊戲(中) // darjun
限制飛船的活動範圍:上一篇文章還留了個尾巴,細心的同學應該發現了:飛船可以移動出屏幕!!!現在我們就來限制一下飛船的移動範圍。我們規定飛船可以左右超過半個身位,如下圖所示:
一起用Go做一個小遊戲(下) // darjun
使用file2byteslice包我們可以將圖片和config.json文件打包進二進制程序中,之後編譯生成一個二進制程序。然後拷貝這一個文件即可,不用再拷貝圖片和其他配置文件了。
golang有很多第三方包可以將打包資源,原理其實很簡單——讀取資源文件的內容,然後生成一個go文件,在這個文件中創建一個變量保存這個文件的二進制內容。
問答推薦
- 新年快樂,請教一個問題,Go使用RabbitMQ的問題?
- 【GO】MySQL like % 模糊查詢問題,如果想查詢的內容是%,該如何做?
- Go 普通字符串打印問題,println 和 string() 包裹一下有什麼區別?
- 請教一個 go 相關的定時任務問題?
- go 的連接資源釋放問題、Mysql、Redis 資源釋放?
- 請教一個 go 使用 redis 的問題?
- go 響應數據 vo 如何快捷過濾 gorm 查詢結果中的敏感信息?
- golang 中怎麼斷言接口 slice 為具體實現 slice?
# SegmentFault 技術週刊 #
「技術週刊」是社區特別推出的技術內容系列,一週一主題。
每週二更新,歡迎「關注」。大家也可以在評論處留言自己感興趣的主題,推薦主題相關的優秀文章。
如有問題可以添加小姐姐微信~