作者簡歷目前任職於凌群電腦軟體事業群,主要專長為C語言、Java、android、資料庫、Servlet/JSP、jQuery。曾於本公司為客戶專案(專案:經濟部智慧財產局「104~105年辦公室自動化系統」導入HTML5、JAVA相關技術與BPM2規範流程引擎),協助為此專案修改、開發Activiti客製化模組,使本案能順利進行。
序論Go語言是Google在2009年所推出,是一套強型別、需編譯、具有Garbage collection的程式語言,在Linux、MacOS或是Windows皆可以執行。Go語言優勢有1.快速又簡單部屬2.支援跨平台編譯3.保護原始程式碼4.善用多核心處理。
安裝Go一、可以先到官方網站https://golang.org/dl/去下載GO。《圖一》
因為筆者使用windows8作業系統、64位元電腦,所以就選如圖檔案安裝。
《圖二》
《圖三》
安裝完成。
二、測試有無安裝成功,打開電腦的命令提示字元,輸入'go'。《圖四》
如果出現如上圖所示,Go語言的一些資訊,代表已經安裝成功。
三、安裝Go語言開發工具:本文將介紹幾個開發工具,它們都具有自動化提示和自動化fmt功能。因為它們都是跨平台的,所以安裝步驟都是通用的。
- LiteIDE:
是一款專門為Go語言開發的跨平台輕量級整合式開發環境,(IDE)由visualfc撰寫。LiteIDE的主要特點有
1.支援主流作業系統(Windows、Linux、MacOS)。
2.Go語言編譯環境管理和切換:管理和切換多個Go語言編譯環境,支援Go語言交換編譯。
3.與Go語言標準一致的專案管理方式:以GOPATH為基礎的套件瀏覽器,以GOPATH為基礎的編譯系統,以GOPATH為基礎的API文件檢索。
4.GO語言的編輯支援:類別瀏覽器看大綱顯示,Gocode(程式自動完成工具)的完美支援,Go語言文件檢視和API快速檢索,程式運算式資訊顯示F1,原始程式碼定義跳躍支援F2,gdb中斷和偵錯支援,gofmt自動格式化支援。
5.其他特徵:支援多國語言介面顯示,完全外掛程式系統結構,支援編輯器配色方案,以Kate為基礎的語法顯示支援,以全文為基礎的單字自動完成,支援鍵盤快速鍵綁定方案,Markdown文件編輯支援
6.即時預覽和同步顯示。
7.自訂CSS顯示。
8.可匯出HTML和PDF文件。
9.批示轉換/合併為HTML/PDF文件。
- Sublime Text 2:
多行編輯,用戶可一次選擇多行並進行同步編輯。(IDE)由visualfc撰寫。LiteIDE的主要特點有
1.支援主流作業系統(Windows、Linux、MacOS)。
2.Go語言編譯環境管理和切換:管理和切換多個Go語言編譯環境,支援Go語言交換編譯。
3.與Go語言標準一致的專案管理方式:以GOPATH為基礎的套件瀏覽器,以GOPATH為基礎的編譯系統,以GOPATH為基礎的API文件檢索。
4.GO語言的編輯支援:類別瀏覽器看大綱顯示,Gocode(程式自動完成工具)的完美支援,Go語言文件檢視和API快速檢索,程式運算式資訊顯示F1,原始程式碼定義跳躍支援F2,gdb中斷和偵錯支援,gofmt自動格式化支援。
5.其他特徵:支援多國語言介面顯示,完全外掛程式系統結構,支援編輯器配色方案,以Kate為基礎的語法顯示支援,以全文為基礎的單字自動完成,支援鍵盤快速鍵綁定方案,Markdown文件編輯支援
6.即時預覽和同步顯示。
7.自訂CSS顯示。
8.可匯出HTML和PDF文件。
9.批示轉換/合併為HTML/PDF文件。
- Vim:
Vim是從vi發展出來的文字編輯器,程式補全,編譯及錯誤跳躍等方便程式的功能特別豐富,被廣大程式設計師使用。
- Emacs:
Emacs是傳說中的神器,它不僅僅是一個編輯器,還是一個整合環境,或可稱它為整合式開發環境,這些功能就像讓使用者置身於全功能的作業系統中。
- Eclipse:
Eclipse也是常用的開發利器,下載goeclipse外掛程式後就可在Eclipse上來撰寫Go語言程式。
使用LiteIDE撰寫第一個Go語言程式首先到
https://sourceforge.net/projects/liteide/下載windows版本的LiteIDE。
《圖五》
下載安裝完成後,打開壓縮檔裡面的exe檔案。
《圖六》
如果上述安裝都沒問題,照理說就能直接打開程式如下圖。
《圖七》
接著我們new一個go檔案名稱Hello.go,並印出Hello World!
《圖八》
Go程式碼寫完點選介面上的BR來run程式。
《圖九》
執行成功後,畫面下方會印出”Hello World! ”字樣,代表Go語言開發環境大功告成。
《圖十》
使用MySQL資料庫可以參考
https://github.com/go-sql-driver/mysql一、先安裝git在自己電腦上,可以到
https://git-scm.com/downloads安裝。
安裝完畢後環境變數path後面新加一個C:\Program Files\Git\bin,如下圖。
《圖十一》
接著打開電腦命令提示字元,輸入”git --version”,檢查看git有無安裝成功,如果安裝成功會如下圖顯示。
《圖十二》
二、在命令提示字元上輸入"go get -u github.com/go-sql-driver/mysql”,如下圖。
《圖十三》
安裝成功後可以在” C:\Users\User\go\src”找到安裝mysql的資料夾,如下圖。
《圖十四》
三、在GO裡面使用MySQL驅動_ "github.com/go-sql-driver/mysql"
《圖十五》
程式執行結果如下圖所示
《圖十六》
可以使用MySQL Workbench或是命令提示字元觀看資料庫內容有無新增成功。
《圖十七》
《圖十八》
實作利用網頁表單透過GO存進MySQL假設我們在網頁表單使用者名稱輸入”王大明”,喜歡的水果輸入”蘋果”,喜歡的運動輸入”籃球”,喜歡的明星輸入”JAY”,最後可以看到伺服器端顯示”新增資料庫成功”,最後可以查看MySQL有無這筆資料。
HTML語法:
《圖十九》
瀏覽器下看到的畫面:
《圖二十》
GO伺服器端:
《圖二十一》
伺服器端執行畫面:
《圖二十二》
以下是透過命令提式字元查看mysql資料。
《圖二十三》
系統特點1.開放原始碼(open source)
2.跨平台(cross-platform)
3.內建全自動垃圾回收(garbage collection)
4.內建平行處理(concurrency)的語法
5.內建函式程式設計(functional programming)
6.輕量級物件(object)系統
7.程式風格強制統一
8.快速編譯
9.內建開發相關工具
10.豐富的標準函式庫
11.成長中的社群資源
結論目前台灣使用Go語言的公司,有17直播、Dcard、旋轉拍賣、雲豹科技、聯發科技、凌網科技、工研院……等等這些常看到的公司。GO語言適用於伺服器編程、 分布式系統、網絡編程、內存資料庫和雲平台,而這些領域正是IT技術未來發展的重要方向。
參考資料1.
GO官方網站2.
台灣使用Go語言的公司3.
Go程式設計教學:簡介