Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1 簡介聽 聽 上一篇部落格我們介紹了Golang的安裝、編譯、運行,本篇部落格我們介紹如何設定面向Golang的vim開發環境。原生的vim無法自行識別golang關鍵字,開發環境如同編輯普通文字檔,無法高亮顯示,更不要說自動補全等功能。為此,我們需要在vim中加入面向golang的外掛程式vim-go。同時,根據vim-go的安裝引導,我們還需要安裝YouCompleteMe(YCM)。2
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1 介面的定義與理解聽 聽 介面是一個自訂類型,它是一組方法的集合。從定義上來看,介面有兩個特點。第一,介面本質是一種自訂類型,因此不要將golang中的介面簡單理解為C++/Java中的介面,後者僅用於聲明方法簽名。第二,介面是一種特殊的自訂類型,其中沒有資料成員,只有方法(也可以為空白)。聽 聽
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1 簡介最近兩年Golang發展迅猛,大有比肩C++、Java等主流語言、成為未來十年最為流行的程式設計語言之勢。在開源社區中,熱火朝天的Docker、Kubernetes、CoreOS生態圈都採用Golang開發,便是Golang大熱的最佳例證。Golang之所以備受推崇,一方面得益於其特有的並發編程模型,一方面得益於其更為簡約抽象的編程哲學(介面、OOP等特性)。作為分布式領域的開發人員,不能不關注Golang。2 安裝環境:
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。聽 聽 golang不支援繼承,只支援嵌入和彙總(匿名欄位稱為嵌入,具名欄位稱為彙總)。golang通過嵌入,可以到達類似繼承的效果,而且更為簡潔。聽 聽
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。作為現代10後語言的golang(12年正式發布)。Golang的標準庫提供了進階的資料結構List。具體在包container/list。該包裡主要有兩個資料結構組成:“Element”、“List”。其中“Element”相當於CPP裡面的"iterator",其有Prev和Next方法用於得到前一個或者下一個迭代器,迭代器的間接引用直接使用其成員Value。1
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。//隊列的鏈式儲存結構的實現//隊列鏈式儲存結構體type LSQueue struct { front *LSQNode //頭指標 rear *LSQNode //尾指標 count int //隊列的線性長度}//隊列鏈式儲存結構節點type LSQNode struct { elem ElemType //儲存的資料 next *LSQNode
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。本部落格原創博文著作權 @Allyvipally@gmail.com僅供交流學習使用用於商業用途請聯絡原作者 轉載請註明出處:http://blog.sina.com.cn/ally2014總所周知,golang現在不支援泛型程式設計,對於習慣了C++泛型程式設計思想的程式員來說無疑是一個硬傷。雖然golang
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。在程式發布之後,經常需要識別程式的版本號碼,來確定一些問題是否因為程式未更新造成的,其中通過在程式開機記錄中輸出編譯時間是最有效方法。在golang中沒有C語言__FILE__,__LINE__,__DATE__,__TIME__這些好用的編譯期常量給我們使用,好在golang提供了強大的cgo在go代碼中嵌入C代碼的方法,可以實現這個需求。廢話不多說,直接上代碼:package main/#const char*
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1.首先在github上面下載包檔案https://github.com/tgulacsi/goracle2.設定的編譯環境不設定編譯環境,不然go build 會出現:# github.com/tgulacsi/goracle/oraclesrc/github.com/tgulacsi/goracle/oracle/connection.go:23:17:error: oci.h: No such file or
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。golang 不支援p12解析,所以需要轉換成pem 網上有一些,但都不能實現自動轉換(非互動模式)。以下是非互動模式的轉換://產生臨時檔案cert.pem,注意passin 和 passout 選項openssl pkcs12 -clcerts -nokeys -out cert.pem -in cert.p12-passin pass:P12_PASS//產生臨時檔案key.pemopenssl pkcs12
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。我的團隊用到了一些簡單的文本解析功能,就移植了 haskell 的 parsec 庫。https://github.com/Dwarfartisan/goparsec通過了第一個測試,應該各個組合子已經可用了。這個其實參考了同行的一個非常優質的 goparsec
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。近日在高負載時使用 Golang 的 sql driver 時碰到泄漏問題,最後終於發現database/sql 的文檔和 Examples 都沒有很好的說明下面2個關鍵點:一、 每個 Golang 進程只需要 sql.Open() 一次最初,想當然的做法是每次有sql請求都先 sql.Open() 。 這實際上是不對的。database/sql 自己會維護串連池,每次
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。以前輸入excel的時候utf8總是亂碼還是用其他方式把utf8轉換為gbk才能顯示,呵呵,其實是輸出了csv,後來群裡的朋友說需要utf8BOM Excel才能正常識別utf8,今天測試了一下,很爽,比以前省了好幾行代碼.呼呼BOM資訊參考:http://zh.wikipedia.org/wiki/位元組順序記號golang實現:package main import ( "os"
Time of Update: 2017-02-09
這是一個建立於