再見Python!我要學Go了!2500字深度分析!

大家好,我是菜鳥哥

週末了跟大家聊我最近的一些想法。編程語言的天下,自古就是適者生存。像是Java, C和Python等語言,都是歷經大浪淘沙,順應時代發展的強大的編程語言。而今天要和大家分享的go語言,也是順應時代發展的強大編程語言,被稱爲取代Python的語言。

從2011-2019 可以看出Go語言的增長速度還是非常迅猛的。

1.什麼是Go 語言

go語言,又被稱爲golang,是由谷歌開發的一種靜態強類型、併發型的編譯型語言,並且還具有垃圾回收功能。於2009年正式開源推出。什麼是靜態呢?之前在python文章中也解釋過,靜態語言就是在編譯時變量的類型就已經明確。而python就是動態類型的語言。強類型指的是如果一個變量被指定爲某個數據類型後,如果不經過強制類型轉換,那麼它就永遠是這個數據類型。這一點與java相同。

go語言的語法接近C語言,但在變量聲明上不同,此外,go同C++相比,不具有枚舉、繼承、虛函數等C++中的典型特徵,但是go增加了切片、併發和垃圾回收、接口等新的特性。

2.爲啥要學Go語言

那麼爲什麼要學習go語言呢,這就要從go語言的語言特色來講起。go語言有3個主要的特點,分別是併發、簡單和開發速度快

  • 併發

    併發是Go最最最重要的語言特色。在go語言中實現併發非常的簡單,只需要用go關鍵字生成一個新的線程。go語言的並行設計的核心是goroutine。goroutine其實是比線程更小的協程,go語言的內部設計完成了goroutine之間的內存共享,而執行goroutine只需要幾KB的內存。goroutine的高效性和便捷性可以同時運行成千上萬個併發任務。

  • 簡潔性

    go語言的簡單性體現在它沒有類,也沒有繼承這些概念,而全部用structs代替。此外,go語言只有唯一的一種代碼規範,所以代碼的可讀性也會非常高。

  • 開發速度

    速度方面,go語言有着堪比java的速度。go語言的簡單語法,讓它在實現相同功能的情況下,會比Java有速度優勢,而且代碼的簡介程度高。但是go語言目前的標準庫遠遠不如Java,因此可能會重複的編寫相同的程序,這一點比Java麻煩不少。

3.Go和Java和python的應用場景的區別?

1).Java廣泛的應用於企業級別的web應用開發和移動應用開發
應用全球最大的開發者專業社羣。不僅如此,Java在數據中心、遊戲控制、移動平臺等具有廣泛的應用,Java在未來很長的時間內也將佔據編程榜第一的寶座。2).python語言易上手,維護簡單,而且擁有者豐富而強大的庫python伴隨着人工智能和大數據以及機器學習的發展得到了越來越廣泛的應用。此外在web開發,爬蟲和遊戲等方面,python也有着許多的應用。3).go語言雖然出現的比較晚,但是其發展勢頭也是極其迅猛的go語言主要致力於提升性能。在大數據領域,go語言發揮出了重要的作用。此外,go語言也被用來開發“大型軟件”。像是大型公司的後臺開發,go語言非常適合處理日誌,進行數據的打包、文件系統和分佈式系統數據庫代理等。此外,go語言還可用於內存數據庫和雲平臺的開發。

4.哪些公司在用go語言?

由於go語言是谷歌推出,所以谷歌當然會提倡並使用go語言做開發。Facebook同樣也在用go進行開發,谷歌和Facebook都在GitHub上開源了一些go的開發項目,有興趣的小夥伴可以看一下。

國內的公司中,騰訊,百度、京東、小米等大型公司都在使用go做開發,百度在運維項目中使用到go語言來負責前端流量接入的開發。京東的雲消息推送系統、雲存儲和京東商城都有go開發項目。

此外,B站也在使用go語言來重構整個的後臺系統。可以看到,目前使用go語言的,都是大型的互聯網公司,如果你想進大廠,學習go語言絕對沒錯。

5.再來看一下go的招聘信息

go開發給的工資還是很高的,而且大都是大型公司招聘,因此想去大廠並做開發的話,學好go語言絕對是不錯的選擇。

6.我的第一個Hello go 語言

說了那麼多,接下來我們來一點乾的,看看如何搭建一個go語言的開發環境,並寫出我們的第一個go語言程序吧。

1).go語言安裝包的配置

大家需要到go的官網下載對應的go語言開發包,小編下載的就是Windows下的開發包。然後大家直接進行安裝即可。安裝完成後,大家需要在系統變量的path下添加go的安裝路徑,如下圖所示。

2).go語言編輯器的安裝

小編用的是goLand,如果熟悉pycharm的話,對於goLand的安裝一定非常的熟悉,因爲它和pycharm都是JetBrains旗下的產品。在goLand安裝時,需要注意勾選以下幾點:

3).第一個go程序

Go語言是綜合了Python的簡潔和C語言的速度,未來5年隨着越來越多的設備進入雲應用,隨着數字化時代,區塊鏈的大浪潮的到來,懂點Go語言會越來越喫香的!左手Python ,右手Go ! 你準備學嗎?歡迎留言區吱一聲,給個三連哦!

目前wx搜索Python 【菜鳥學Python】排第二,匯聚了30萬Python愛好者,累計原創近400篇趣味乾貨(爬蟲,數據分析,算法,面試指南,原創趣味實戰,Python遊戲,機器學習),歡迎一起學Python,交流指正。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章