Time of Update: 2018-08-13
1.4 Go開發工具 本節我將介紹幾個開發工具,它們都具有自動化提示,自動化fmt功能。因為它們都是跨平台的,所以安裝步驟之類的都是通用的。 LiteIDE LiteIDE是一款專門為Go語言開發的跨平台輕量級整合式開發環境(IDE),由visualfc編寫。 圖1.4 LiteIDE主介面 LiteIDE主要特點: 支援主流作業系統 Windows Linux MacOS X Go編譯環境管理和切換
Time of Update: 2018-08-11
GO使用GVM和Glide建立管理工程 安裝了GVM和Glide,下面看看怎樣建立Go工程,按照Glide官方的文檔,建議的項目目錄結構如下: - $GOPATH/src/myProject (Your project) |-- glide.yaml |-- glide.lock |-- main.go (Your main go code can live here) |-- mySubpackage (You can create your own subpackages,
Time of Update: 2018-08-13
Go語言資料收集 說明 發布網站 GitHub CSDN 新浪 最後更新 2012-01-21 整理最佳化格式,添加更多內容,詳見 變更記錄 緣起說明 想學習稱手的新語言,發現Go後非常感興趣,也把接觸到的一些資料整理共用出來。 資料若有錯誤或缺漏,或者大家有更好的建議,歡迎 郵件聯絡 可看 已收集建議
Time of Update: 2018-08-14
參考連結:https://github.com/ethereum/go-ethereum/wiki/Running-in-Docker 原文轉載:http://dockone.io/article/1931 以太坊Go(語言)團隊構建一個“geth”節點的Docker鏡像作為其持續構建鏈的一部分。 我們可以使用這些鏡像在我們的本地環境中快速運行以太坊節點。本文中我們將利用Docker構建一個以太坊工作和開發環境。## 一個完整的以太坊節點 ##第一個測試是下載當前Ethereum go-
Time of Update: 2018-08-13
EMC中國研究院 顏開 簡介 多核處理器越來越普及,那有沒有一種簡單的辦法,能夠讓我們寫的軟體釋放多核的威力。答案是:Yes。隨著Golang, Erlang,
Time of Update: 2018-08-13
Time of Update: 2018-08-13
很多人對Go語言的array和slice傻傻分不清楚,今天我們就從底層出發,來聊聊它倆到底有什麼區別。數組幾乎所有電腦語言,數組的實現都是相似的:一段連續的記憶體,Go語言也一樣,Go語言的數組底層實現就是一段連續的記憶體空間。每個元素有唯一一個索引(或者叫下標)來訪問。如所示,是[5]int{1:10, 2:20}數組的內部實現邏輯圖:由於記憶體連續,CPU很容易計算索引(即數組的下標),可以快速迭代數組裡的所有元素。
Time of Update: 2018-08-12
前言這兩周學了很多東西,還把golang語言基本掌握了,收穫還是挺多的。在做安全的過程中,有很多需要定時執行的任務,比如抓取主機數量,連接埠資料等,這都逃不開linux中的crontab命令,今天分享一下crontab這個小知識點。提醒大家一下,在大公司伺服器中,部署的基本上都是CentOS,所以大家想學CentOS上的操作,推薦大家看一下《鳥哥私房菜》命令說明crontab 命令可以在固定的間隔時間執行指定的系統指令或 shell
Time of Update: 2018-08-12
# 像Laravel-Artisan一樣執行go命令## 前言作為一個`laravel`重度患者,`artisan`是一個不可或缺的功能,可以說這是`laravel`的開發腳手架可以快速建立需要的檔案,加快開發速度而我目前正在開發的`bingo`架構正是受到`laravel`啟發,希望可以快速構建web應用而一個腳手架是必不可少的東西,所以我實現了一個`bingo sword` 工具### laravel-artisan實現思路我曾經寫過artisan的解析,連結在這裡[laravel
Time of Update: 2018-08-13
問題引入當某個struct存在某個欄位為string或者[]byte類型但是實際上儲存的內容是json格式的資料時,對其進行json序列化,比如type Message struct { From string `json:"from"` To string `json:"to"` Data string `json:"data"`}func main() { msg := Message{
Time of Update: 2018-08-12
一個簡單的web伺服器package mainimport ( "fmt" "log" "net/http")func main() { http.HandleFunc("/", handler) log.Fatal(http.ListenAndServe("localhost:8888", nil))}func handler(w http.ResponseWriter, r
Time of Update: 2018-08-12
當你確定要學習一項技術時,首先要過的一關就是環境的安裝,go語言的安裝很簡單,下邊對各個點進行展開語言安裝官網下載對應平台的二進位包,進行安裝linux,mac下內建的安裝工具進行安裝源碼編譯安裝,需要依賴一些工具,gcc,make等環境變數安裝go語言中有兩個重要的環境變數,GOROOT,GOPATH,GOROOT是go語言安裝目錄和語言內建包的存放目錄,GOPATH是go語言開發的工作空間,在該目錄下有三個目錄,src,pkg,bin,src是源碼存放的路徑的,pkg是編譯串連庫檔案,bin
Time of Update: 2018-08-12
正則可以高效對一段固定模式的內容,進行提取,例如從urlhttp://blog.jiguba.cn/2018/01...正則模版template=^http://blog.jiguba.cn/([\d]{4})/([\d]{2})/([\d]{2})/([w-]+).html$實現代碼package mainimport ( "fmt" "regexp")func main() { flysnowRegexp :=
Time of Update: 2018-08-12
對於一門語言,在函數傳參時,存在兩種方式,一種是值傳遞,一種是引用傳遞,那麼go語言是怎麼進行參數傳遞的值傳遞是傳遞的變數的副本,引用傳遞指的是傳遞該變數的地址,在值傳遞過程中,函數對函數形參數的修改,不會導致實參的修改,而引用傳參,對形參的修改,會導致該實參的修改,這是過去我們在其它語言中的一些認知,那麼go語言會顛覆我們過去的認知,使用了一種新的方式.demo1package mainimport ( "fmt")func main() { a := 10
Time of Update: 2018-08-13
序言錯誤處理在每個語言中都是一項重要內容。眾所周知,通常寫程式時遇到的分為異常與錯誤兩種,Golang中也不例外。Golang遵循『少即是多』的設計哲學,錯誤處理也力求簡潔明了,在錯誤處理上採用了類似c語言的錯誤處理方案,另外在錯誤之外也有異常的概念,Golang中引入兩個內建函數panic和recover來觸發和終止異常處理流程。基礎知識錯誤指的是可能出現問題的地方出現了問題,比如開啟一個檔案時可能失敗,這種情況在人們的意料之中
Time of Update: 2018-08-11
寫了一個簡單golang產生隨機字串的方法,分享出來,產生的都是大寫的字母func init() { r = rand.New(rand.NewSource(time.Now().Unix()))}func RandString(len int) string { bytes := make([]byte, len) for i := 0; i < len; i++ { b := r.Intn(26) + 65 bytes[i] = byte(
Time of Update: 2018-08-13
go語言資料集合Go語言核心技術(卷一)之2.1-整數Mac系統搭建Go語言Sublime Text
Time of Update: 2018-08-13
最近程式設計語言當中,golang無疑是風生水起,年度語言,伺服器端語言,並發語言,皇冠可謂不少。golang開發的初衷是替換掉c/c++,作為系統級語言,加上在1.3版本中打算將編譯系統從原來c語言開發的plan
Time of Update: 2018-08-13
1、下載 golang 並解壓(這裡以解壓到 $HOME/golang/ 目錄為例):http://www.golangtc.com/download2、建立 GoPath 相關目錄(這裡以 $HOME/golang/projects/ 目錄為例):mkdir ~/golangmkdir ~/golang/projectsmkdir ~/golang/projects/3rdpartymkdir ~/golang/projects/3rdparty/binmkdir
Time of Update: 2018-08-13
搭建golang開發環境 安裝從官方網站golang.org下載最新版的64位golang(可能需要翻牆):https://storage.googleapis.com/golang/go1.5.1.linux-amd64.tar.gzhttps://storage.googleapis.com/golang/go1.5.1.windows-amd64.msi Linux下的安裝步驟為tar -xzvf go1.5.1.linux-amd64.tar.gzmv go /usr/local/sha