# Go的起源
--: 作者:Fuzz
時間:2018年8月26日
* * * * *
### 谷歌工程師的20%時間
>谷歌的“20%時間”工作方式,允許工程師拿出20%的時間來研究自己喜歡的項目。語音服務Google Now、谷歌新聞Google News、谷歌地圖Google Map上的交通信息等,全都是20%時間的產物。
### PHP、Python、go 誕生時間
#### PHP
> 誕生時間
PHP是1994年由Rasmus Lerdorf開始用perl寫的一個網站維護和流量統計小工具。
1995年,用C重寫,并發布了PHP1.0.
#### Python
>誕生時間
1991年,第一個Python解釋器誕生,它是用C語言實現的,并能夠調用C語言的庫文件。
#### GO
> 誕生時間
Go 語言起源 2007 年,并于 2009 年正式對外發布。它從 2009 年 9 月 21 日開始作為谷歌公司 20% 兼職項目,即相關員工利用 20% 的空余時間來參與 Go 語言的研發工作。
### GO 創始人

>該項目的三位領導者均是著名的 IT 工程師:羅伯特·格瑞史莫、羅勃特·派克、肯尼斯·湯普遜
#### 羅勃特·派克(Rob Pike)
>羅勃·派克(Rob Pike),來自加拿大的程序員,曾經加入貝爾實驗室,為 UNIX小組的成員。曾經參與過貝爾實驗室九號計劃、Inferno,與編程語言 Limbo的開發。他與肯·湯普遜共同開發了UTF-8。
#### 肯尼斯·湯普遜(Ken Thompson)
>肯·湯普遜(英語:Ken Thompson),是美國計算機科學學者和工程師。黑客文化圈子通常稱他為“ken”[1]。在貝爾實驗室工作期間,湯普遜設計和實現了Unix操作系統。他創造了B語言——C語言的前身,而且他是Plan 9操作系統的創造者和開發者之一。2006年,湯普遜進入Google公司工作,與他人共同設計了Go語言。他與丹尼斯·里奇同為1983年圖靈獎得主。
此外,肯·湯普遜還參與過正則表達式和UTF-8編碼的設計,改進了文本編輯器QED,創造了ed編輯器。他曾制造過專門用于下國際象棋的電腦“Belle”,并創建了殘局數據庫。
#### 羅伯特·格瑞史莫(Robert Griesemer)
> 圖靈獎得主,C語言前身B語言的作者,Unix的發明人之一, 操作系統Plan 9的主要作者。 共同開發了UTF-8。
### 市面上已經有這么多編程語言了,這三位大佬為什么還要重新寫一門語言?

### GO 語言版本版本迭代
* 2007 年 9 月 21 日:雛形設計
* 2009 年 11 月 10 日:首次公開發布
* 2010 年 1 月 8 日:當選 2009 年年度語言
* 2010 年 5 月:谷歌投入使用
* 2011 年 5 月 5 日:Google App Engine 支持 Go 語言

### GO 的項目
1. docker,golang頭號優秀項目,通過虛擬化技術實現的操作系統與應用的隔離,也稱為容器;
2. kubernetes,由google開發,簡稱k8s,k8s和docker是當前容器化技術的重要基礎設施;
3. etcd,一種可靠的分布式KV存儲系統,有點類似于zookeeper,可用于快速的云配置;
4. tidb,國內PingCAP 團隊開發的一個分布式SQL 數據庫,國內很多互聯網公司在使用;
5. consul,HashiCorp公司推出的開源工具,用于實現分布式系統的服務發現與配置;
6. V2Ray
7. Lantern
8. gin & beego 兩個快速開發Go應用的http框架
### 使用GO的公司國內
1. BAT(部分業務)
2. MDT(80%的業務)
3. 知乎
4. 七牛云
5. 嗶哩嗶哩
6. 京東
7. 小米
8. 360
## GO語言排名

### PHP 待遇

### GO 待遇

> 發現薪資待遇差不了多少,但是注意看一下工作年限,1-3年平均 20起,3年以我就不說啦。
### GO 語言是面向什么編程?
### GO 語言學習難不難
>**25**個關鍵字
程序聲明:import、package
程序實體聲明和定義:chan、const、func、interface、map、struct、type、var
程序流程控制:go、select、break、case、continue、default、defer、else、fallthrough、for、goto、if、range、return、switch
### GO 語言課程安排

### 授課方式
> 授課方式使用,視頻學習+學習討論+學習筆記
> 要求:沒人擁有自己的博客,自己的學習筆記。
### GO 語言知識圖解
https://github.com/gocn/knowledge/blob/master/Go%E7%9F%A5%E8%AF%86%E5%9B%BE%E8%B0%B1.png