2016年11月21日 星期一
2016年10月2日 星期日
[Go教學] 產生隨機數
想要在go程式中產生隨機數需要使用兩個package -> math/rand , time
rand是用來產生隨機數用的
而time則是以時間來產生隨機種子
先來說說rand的部份
使用前要先用 func (r *Rand) Seed(seed int64) 來產生種子
這邊裡面要填入的是任意整數
接者使用 func (r *Rand) Int() int 來產生隨機數
以下舉個例子
2016年9月13日 星期二
[Linux] 製作可開機隨身碟
今天重灌了電腦,由於目前主要使用linux,因此需要找一個方法來將系統燒錄到隨身碟中
⊳ 第一步—準備映像檔:
那這次我選用的系統是 Apricity OS
這是一款基於Arch的系統,個人還蠻喜歡他的界面的
2016年9月11日 星期日
[Go教學] 檔案輸入輸出(基礎)
最近在處理一些資料剛好用到了go的檔案輸入輸出,底下來講一些比較基本的部份吧~
流程以及基本函式:
上面這張圖就是這次要講的4個基本函式,其中最重要的就是OpenFile()以及Close(),以下逐一介紹~
2016年9月1日 星期四
[Go教學] (4) 基礎元件宣告
就如前一單元開頭所說,Go的宣告方式非常的多元www
當初在看的時候花了不少時間才弄懂,試著找出一種最適合自己的方法就好囉OuO
宣告的方式最主要分為兩種,自己指定類型 以及 由系統決定類型
宣告的方式最主要分為兩種,自己指定類型 以及 由系統決定類型
自己指定類型:
這種宣告方式就是由自己來決定所宣告的變數是什麼類型
(ps.看完這篇就知道為啥會有兩種)
公式: 型態 變數名稱 變數類型 ( = 值 )
- 型態分為 var (variable變數) 以及 const (constant常數)
所謂的variable就是可以在事後改變所儲存的值,反之即是constnt - 變數類型就是常見的 int (整數) / float(浮點數) / string(字串)
- ( = 值 ) 指定初始數值給宣告的這個變數
2016年8月30日 星期二
[Go] 用go語言翻轉Minecraft - go-mcpi-api
(圖片來源:http://pi.minecraft.net)
看到這裡你可能會想問:
- Minecraft Pi Edition是什麼?Minecraft Pi Edition是開發來讓使用者學習程式的免費Minecraft版本
- Mcpi是什麼?
Mcpi是可以搭配Pi Edition的函式庫,可以從寫程式玩遊戲的途中學習如何使用一門語言,從遊戲中學習,我第一次接觸的時候,雖然已經有點基礎了,但還是跟同學玩的不亦樂乎wwwMcpi就我所知最原始的版本應該是用python寫成的,網路上也可以找到許多教學,中文的部份可以參考這本書(Minecraft新魔法:打破虛擬沙盒世界的界限),這本書是以python版本的教學為主另一個教學是我一開始接觸的,藉由7堂課,將整個api的基本用法教過一遍,我覺得寫的非常簡單易懂
-> TeachCraft-Challenges
2016年8月5日 星期五
[Go教學] (3) 基礎元件介紹
go語言的宣告方式實在是超多種的,光型態就足以讓初學者搞混了
對第一次接觸的人會有相當大的困擾,當初我在學的時候也是看的眼花撩亂的www
我認為只要選擇一種自己用的最習慣的方式就可以了
基本上最常用的型態就三種 int(整數) / float(浮點數/小數) / string(字串)
對第一次接觸的人會有相當大的困擾,當初我在學的時候也是看的眼花撩亂的www
我認為只要選擇一種自己用的最習慣的方式就可以了
基本上最常用的型態就三種 int(整數) / float(浮點數/小數) / string(字串)
2016年8月4日 星期四
[Go教學] 跨平台編譯
Q: 我寫在Linux (windows)上寫的go程式要怎麼給windows (linux)使用???
可能對少部份的人會有這樣的困擾wwww
go很特別,跨平台編譯之類的非常的簡單~
之前我幫同學用go寫一些工具程式,因為我本身使用linux,而使用者多為windows,所以就有了跨平台編譯的需求
但編譯出來的結果,雖說是可以用,但在輸入輸出的地方會稍微有一點問題,所以我不建議跨平台編譯www
[Go教學] (2) 第一個程式
第一個程式不免俗的要來個hello world囉~
首先先來了解一下整個go程式的架構
觀察一下上面的程式,可以發現跟C的架構非常相像
由 package , import , func 三個部份組成
觀察一下上面的程式,可以發現跟C的架構非常相像
由 package , import , func 三個部份組成
2016年8月3日 星期三
[Go教學] (1) 學習前準備
在正式開始學習前,先來準備開發環境
Q:我應該用什麼ide來開發呢?
A:目前我沒看到任何適合的IDE(或許visual studio可以用,但我的電腦主要系統是linux,所以沒有特別關注sor),在linux上我是使用vim做開發,也就是用文字編輯器
Q:我是不是要裝編譯器?
A:是的,就像是開發C要裝GCC/G++,以GO開發的話也需要安裝GO的編譯器喔
ps.如果要使用cgo的話也需要裝gcc喔
那麼就讓我們開始吧!!
以下會分成linux系統以及windows來做介紹,因為我沒有Mac,所以使用的Mac朋友就抱歉了QwQ
那麼就讓我們開始吧!!
以下會分成linux系統以及windows來做介紹,因為我沒有Mac,所以使用的Mac朋友就抱歉了QwQ
2016年8月2日 星期二
[Go教學] 序
Go語言(golang)是由google基於C開發的語言
當初會想學這個語言完全是覺得"挖大家都不會學這個也太潮了吧"OwO,後來是拿來做網頁的後端(學習中...),基於C開發的GO在很多語法上跟C很像,有C的基礎的話要上手是非常容易的,要說他有什麼特點的話,以我的了解應該是以下兩點:
- 可以平行運算(Goroutine)
我想這也是go很適合當作後端的原因之一,但這部份我還不是很了解,之前有學過一點cuda,平行運算要用另一種思維來看待運算這回事,但go的平行運算卻是相對來說比較簡單且易用的,有機會的話後面會介紹到OuO
- 可以使用C的library(cgo)
這是他基於C開發的好處,GO可以直接使用C的函式庫,甚至是將原本以C的語法寫成的自訂函式直接搬過來使用,當初看到這個整個超興奮的www
接下來會慢慢發布教學,所有的連結也會整理在這篇,敬請期待
(ps.教學主要是給有程式基礎的人喔,不用非常進階,只要有基礎就行了~)
訂閱:
文章 (Atom)