Time of Update: 2018-08-17
還是老一套,go在網路模組的開發確實是便捷無比,使用goroutine的特性簡直是如魚得水,準備簡單的使用go做一個cs的聊天室,整體代碼不到一千行,核心代碼可能就一兩百行,非常通俗易懂,能協助我們學習goroutine的特性和感受tcp。 原始碼:https://github.com/lightTrace/go-learn/tree/chatroom 效果圖 服務端: 用戶端jack: 用戶端pony: 一 服務端 server.go
Time of Update: 2018-08-21
[ 原始碼下載:http://download.csdn.net/source/3526786 ] Introduction 這裡,我將介紹在對話方塊中使用ActiveX控制項的ATL支援。由於ATL專業處理ActiveX控制項,因此WTL不涉及其他輔助類。不過,使用ActiveX控制項的ATL方法與MFC有很大的不同,所以需要重點介紹。我將介紹如何使用一個ActiveX控制項並處理事件,開發一個程式(與MFC類嚮導產生的程式相比不丟失功能)。
Time of Update: 2018-08-22
我怎麼看技術人員去創業公司這件事. 當前,創業風潮席捲而來,很多人也會受到這個吸引和影響。分享一下我是怎麼看這件事的。首先,我不會阻止你,因為大家有更好的機會,更多的薪水,我會為你高興,你不去,我還得鼓動你去。但是你得搞清楚兩件事,第一:你圖啥,第二,老闆是否靠譜。 你想要什麼。 1.想做某件事情,不計成本,哪怕不發工資,比如百度的產品vp俞軍,這種情況,我覺得不需要任何考慮,去做就好了。
Time of Update: 2018-08-23
Go微服務環境搭建:(首先需要安裝git)一,首選需要安裝protobuf1.1 安裝protoc-gen-go選擇Go的src目錄,建立github.com/golang目錄go get -u github.com/golang/protobuf/protoc-gen-go 執行go build 然後安裝 go install1.2
Time of Update: 2018-08-23
GoLang協程學習golang也有一段時間了,這裡講一下自己對golang協程的使用理解,golang很多人都知道,畢竟有個好爹Google,提起golang和其它語言最大區別莫過於goroutine,也就是go的協程,先來一個demopackage mainfunc say(s string) { for i := 0; i < 5; i++ { println(s) }}func main() { go say("Hello")
Time of Update: 2018-08-22
本文轉自:https://www.cnblogs.com/demon89/p/7259724.htmlMap 是一種無序的索引值對的集合。Map 最重要的一點是通過 key 來快速檢索資料,key 類似於索引,指向資料的值。Map 是一種集合,所以我們可以像迭代數組和切片那樣迭代它。不過,Map 是無序的,我們無法決定它的返回順序,這是因為 Map 是使用 hash 表來實現的。所以在golang中Map的遍曆不像其他語言一樣,它的輸出是無序的func traversal() {
Time of Update: 2018-08-16
分享一點不成熟的理解,還請本著交流進步的大原則噴之。從去年開始接觸和套用DDD以來,已經有1年多時間了。也先後在2個生產項目中主導應用,都是基於.Net Core的,完全參考https://github.com/EduardoPires/EquinoxProject
Time of Update: 2018-08-21
1.什麼是etcd服務etcd是一個採用HTTP協議的健/值對儲存系統,它是一個分布式和功能層次配置系統,可用於構建服務發現系統。用於共用配置和服務發現的分布式,一致性的KV儲存系統.其很容易部署、安裝和使用,提供了可靠的資料持久化特性。它是安全的並且文檔也十分齊全。ETCD該項目目前最新穩定版本為3.3.9
Time of Update: 2018-08-19
golang是特別不適合拿來做應用程式層可靠協議開發的語言。所有的可靠協議都依賴於串連狀態,在講究並發的情境下,所有的狀態都依賴於事件,所有的事件都依賴於核心檔案描述符,問題是,在可靠情境下,我們常常需要將一個連接埠用作一塊網卡,一塊網卡可以有65536個描述符並發處理事件,一個連接埠卻只有一個描述符,這一個描述符需要類比出65536個描述符的事件處理效能,這本來就是令人頭大的問題。golang本身的協程機制----固然golang和大多數的協程實現不盡一致----導致每一個事件的處理都應短暫,
Time of Update: 2018-08-19
前面的文章分享的部分功能都能正常使用,本次分享分析下 -- 輸入驗證為了保持項目的可學習性,我這裡將之前分享的代碼積累了下,放在github上,想要儘快入手學習的,可以直接cloneMy Code,寫代碼不上手,都等於白搭,光看的話,對於我來說,我是不行的,沒辦法學會。項目地址https://github.com/durban89/wiki_blogtag: 1.0.2有些同學可能看不懂,怎麼就只給了這些,完全不懂呀。我把使用的命令打出來,照著操作,就應該可以解決了git clone
Time of Update: 2018-08-19
Tip1擷取最近運行容器的id 這是我們經常會用到的一個操作,按照官方樣本,你可以這樣做(環境ubuntu):這種方式在編寫指令碼的時候很有用,比如你想在指令碼中批量擷取id,然後進一步操作。但是這種方式要求你必須給ID賦值,如果是直接敲命令,這樣做就不太方便了。 這時,你可以換一種方式:docker ps -l -q命令將返回最近啟動並執行容器的id,通過設定別名(alias),dl命令就是擷取最近容器的id。這樣,就無需再輸入冗長的docker ps -l
Time of Update: 2018-08-19
mongodb的安裝及配置,參考下文:https://blog.csdn.net/heshushun/article/details/77776706proto註冊協議擴充:1.服務端: 編譯 lobby.proto 檔案(對此不瞭解?請先閱讀《在 Golang 中使用 Protobuf》一文)得到 lobby.pb.go 檔案,命令如下: protoc --go_out=. lobby.proto將lobby.pb.go 放在LeafServerExample
Time of Update: 2018-08-12
本文同時發布個人CSDN部落格: https://blog.csdn.net/ggq89/article/details/81148558相信不少 Gopher 在寫 Golang 程式都遇到過 import cycle not allowed 問題,本人最近研讀 go-ethereum 源碼時,發現定義 interface 也能解決此問題, 還能解決連分包都不能解決的情況, 並且比分包更加簡單快捷。下面逐個講解 分包 和 定義介面 這兩種方法。1. 應用情境假設有如下使用情境:A
Time of Update: 2018-08-14
> 編者按> ###### *大家好,我是郝林,我在極客時間上面開設了專欄《[Go語言核心36講]( https://time.geekbang.org/column/intro/112?utm_source=website&utm_medium=goyuyanzhongwenwang&utm_campaign=112-presell&utm_content=link0814)》,將自己十多年對 Go
Time of Update: 2018-08-18
首先由genkey.go產生公開金鑰和私檔案,在rsa.go裡使用產生的公開金鑰和私密金鑰進行加密和解密//檔案 genkey.go//產生公開金鑰和私密金鑰 pem檔案```gopackage mainimport ( "crypto/rand" "crypto/rsa" "crypto/x509" "encoding/pem" "flag" "log" &
Time of Update: 2018-08-13
安裝 GoGo語言的優劣,這裡就不介紹了,下面直接講Go 的安裝:Go 的官方網站:http://golang.org/(需要FQ軟體)國內下載地址:http://www.golangtc.com/download)下載對應平台的安裝包。注意區分32位還是64位作業系統。安裝包下載完成之後,安裝過程很簡單,傻瓜式下一步到底就好了。 Go 環境變數安裝go 的時候,安裝程式會自動把相關目錄寫到系統內容。但是如果是zip 的安裝,需要自己手動添加。主要配置以下幾個:GOROOT:Go
Time of Update: 2018-08-13
轉載:https://mp.weixin.qq.com/s?__biz=MzU2NjIzNDk5NQ==&mid=2247483797&idx=1&sn=18579f6a4e319b6adefc02520a59e2bc&scene=21#wechat_redirectgolang的基礎資料型別 (Elementary Data Type)-整型種類 有符號(負號) 1. int8 int16 int32 int64無符號(無符號) 1. uint8 uint16
Time of Update: 2018-08-11
即將發布的Go 1.11將加入對go mod的支援,解決了go一直存在的依賴管理的短板。不過這篇文章並不是要介紹go module本身,而是打算說一下go團隊和社區之間的衝突——你可以從中看到go
Time of Update: 2018-08-13
在程式開發時我們都會認為外部提供的介面或者資料都是不可信的。比如函數總是要檢查入參的正確性,在做單元測試的時候要把外部提供的介面給屏蔽掉等。之所以都會這麼做,主要還是很難保證自己還是其他人可以提供一個沒有任何缺陷的介面。既然介面是人寫的,那麼多少會有些考慮不到的地方,這時候介面在被調用的時候就有可能發生錯誤或者異常。這裡討論golang中的異常處理機制,其實就是panic和recover這兩個介面的運用,類似於C++中的try和catch。 1、golang中的panic
Time of Update: 2018-08-13
本文個人部落格地址為:http://www.huweihuang.com/article/golang/govendor-usage/ 本文個人部落格地址為:https://huweihuang.net/article/golang/govendor-usage/ 更多golang包管理工具參考 - dep的使用 - glide的使用 - govendor的使用1. govendor簡介golang工程的依賴包經常使用go get命令來擷取,例如:go get