我覺得學(xué)習(xí)一門語言最重要的就是做到三點(diǎn),第一看基礎(chǔ)知識(shí),第二學(xué)習(xí)抄代碼,第三學(xué)習(xí)寫代碼
第一點(diǎn),很多人都覺得上來就動(dòng)手寫,但是你基礎(chǔ)的東西都沒掌握,怎么寫呢?欲速則不達(dá),所以基礎(chǔ)的東西還是必須要先掌握好。這里推薦幾個(gè)基礎(chǔ)的入門材料:
https://tour.golang.org/#1
邢星翻譯的 https://github.com/mikespook/Learning-Go-zh-cn
Go byExample :https://gobyexample.com/
我覺得你把這幾個(gè)基礎(chǔ)掌握之后就可以開始抄襲代碼了, 如果你之前有 PHP 的開發(fā)經(jīng)驗(yàn), 那么也許我寫的這本書對(duì)你了解 golang 有幫助,?
https://github.com/astaxie/build-web-application-with-golang
【推薦下,有PHP基礎(chǔ)的人適合】
第二點(diǎn),我們很多時(shí)候開始寫代碼都是沒什么思路,也無從下手,但是我們可以模仿別人寫代碼,上海俗話里面常說"吃大戶,用大戶,消滅大戶",我們就是"看代碼,抄代碼,最后自己寫代碼"。這里給你幾個(gè)入門級(jí)別的代碼看看學(xué)習(xí)一下:
https://github.com/hoisie/web 很簡(jiǎn)單,就是學(xué)習(xí)他的路由怎么實(shí)現(xiàn)的,如何編寫自己的路由
https://github.com/icub3d/home/ 這是一個(gè) Go+ AngularJS 的實(shí)現(xiàn),看看如何做 API 應(yīng)用
最后我列一下你可以自己參考去實(shí)現(xiàn)的一些功能:
1、日志分析
2、IP 庫分析
3、管理后臺(tái)查看分析日志
第三點(diǎn),自己寫代碼,這個(gè)時(shí)候就是已經(jīng)對(duì) golang 有了一定的了解了,那么我們就可以開始做自己的項(xiàng)目了,做項(xiàng)目最想就是快速開發(fā), 那么我就推薦你
https://github.com/astaxie/beego 使用 beego 框架可以很快速的開發(fā)你的 Web 或者 API 應(yīng)用
https://www.docker.com/ 使用 docker 來做虛擬化
https://github.com/nsqio/nsq 學(xué)習(xí)消息隊(duì)列,學(xué)習(xí) channel 和分布式
https://github.com/coreos/etcd 分布式應(yīng)用
這個(gè)階段就是找各種東西用 golang 來寫,多寫就會(huì)理解越來越深入。