P265 Go 學習筆記 第四版
P219 Go 學習筆記
P202 Go 學習筆記 第三版
P46 一個 Go 進程可以輕易支撐幾十萬上百萬并發運行的 Go 例程(只要你內存足夠大)
P24 Go,會成為下一個Java嗎?不。Go 不是下一個 Java。 認為 Go 是下一個 Java,那是遠遠低估 Go 的能力。 Go 是下一個 C!
P247 首先引領讀者快速瀏覽?Go?語言的全貌,迅速消除讀者對這門語言的陌生感,然后循序漸進地介紹了?Go?語言的面向過程和面向對象的編程語法,其中穿插了一些與其他主流語言的比較以讓讀者理解?Go?語言的設計動機,接著探討了?Go?語言最為重要的并行編程方法,之后介紹了網絡編程、工程管理、安全編程、開發工具等非語法相關但非常重要的內容,最后為一系列關于?Go?語言的文章,可以幫助讀者更深入了解這門全新的語言。
P5 本文檔會介紹如何編寫一個新的包,以及如何測試代碼。本文檔假設讀者已經根據安裝指南成功地安裝了Go。
P8 Go和C++一樣,也是一門系統編程語言。該文檔主要面向有C++經驗的程序開發人員。它討論了Go和C++的不同之處,當然也討論了一些相似之處。如果是想要Go的概要介紹,請參考Gotutorial和EffectiveGo。關于語言細節的正式說明,請參考Gospec。概念差異Go沒有支持構造和析構的class類型,也沒有繼承和虛函數的概念。但是go提供接口interfaces支持,我們可以把接口看作是C++中模板類似的技術。Go提供垃圾內存回收支持。我們沒有必要顯式釋放內存,go的運行時系統會幫我們收集垃圾內存。Go中有指針,但是沒有指針算術。因此,你不可能通過指針以字節方式來遍歷一個字符串。數組一個普通類型變量。
P9 Go語言提供一般的流程控制語句:if,for,switch,goto.同時它還提供go語句來執行一個goroutine.這里我們將介紹幾個不太常見的語句:defer,panic,和recover.一個defer調用的函數將被暫時保存到調用列表中.保存的調用列表在當前環境返回的時候被執行.
P6 簡介Go的內存模型詳述了"在一個groutine中對變量進行讀操作能夠偵測到在其他goroutine中對該變量的寫操作"的條件.HappensBefore對于一個goroutine來說,它其中變量的讀,寫操作執行表現必須和從所寫的代碼得出的預期是一致的。也就是說,在不改變程序表現的情況下,編譯器和處理器為了優化代碼可能會改變變量的操作順序即:指令亂序重排。但是在兩個不同的goroutine對相同變量操作時,會因為指令重排導致不同的goroutine對變量的操作順序的認識變得不一致。
P4 Go里的所有的東西都是用數值傳遞. 一個函數總是獲取這個東西傳遞的拷貝,只是有一個分配聲明給這個參數分配這個數值. 例如,拷貝一個指針數值就做了這個指針的拷貝,而不是指針指向的數據.
P39 Go是一個新的語言。雖然它從其他語言中借鑒了一些特性,但是Go語言的編程方式和其他是有本質卻別的。如果只是簡單的將C++或Java等代碼翻譯為Go代碼是不可能得到最優的Go代碼的。java程序員用java的思維方式編程,并不是Go的思維方式。如果采用go的思維方式,一個問題可能有完全不同的解決方法。因此,如果要真正的用好Go語言,理解它的語言特性和設計思想是很重要的。另外,還要知道Go語言的變成風格,例如命名方式、格式化、程序結構等等,采用通用的方式也便于和其他的Go程序員交流。
P5 簡介Go是一個開源項目,采用BSD授權協議。該文檔介紹如何獲取Go源代碼,如何編譯,以及如何運行Go程序。目前有兩種方式使用Go語言。這里主要講述如何使用Go專用的gc系列工具(6g、8g等)。另一個可選的編譯器是基于gcc后端的gccgo編譯器。
P17 簡介本文是關于Go編程語言的基礎教程,主要面向有C/C++基礎的讀者。它并不是一個語言的完整指南,關于Go的具體細節請參考語言規范一文。在讀完這個入門教程后,深入的華可以繼續看Effective Go,這個文檔將涉及到Go語言的更多特性。此外,還有一個《Go語言三日教程》系列講座:第一日,第二日,第三日。下面將通過一些小程序來演示go語言的一些關鍵特性。所有的演示程序都是可以運行的,程序的代碼在安裝目錄的"/doc/progs/"子目錄中。文中的代碼都會標出在源代碼文件中對應的行號。
P35 Go編程基礎講師:無聞什么是Go?Go是一門并發支持、垃圾回收的編譯型系統編程語言,旨在創造一門具有在靜態編譯語言的高性能和動態語言的高效開發之間擁有良好平衡點的一門編程語言。Go的主要特點有哪些?類型安全和內存安全以非常直觀和極低代價的方案實現高并發高效的垃圾回收機制快速編譯(同時解決C語言中頭文件太多的問題)為多核計算機提供性能提升的方案UTF-8編碼支持Go編程基礎講師:無聞Go存在的價值是什么?
P134 Go語言是由Google開發的一個開源項目,目的之一為了提高開發人員的編程效率。 Go語言語法靈活、簡潔、清晰、高效。它對的并發特性可以方便地用于多核處理器 和網絡開發,同時靈活新穎的類型系統可以方便地編寫模塊化的系統。go可以快速編譯, 同時具有垃圾內存自動回收功能,并且還支持運行時反射。Go是一個高效、靜態類型, 但是又具有解釋語言的動態類型特征的系統級語法。
P186 Go語言是由Google開發的一個開源項目,目的之一為了提高開發人員的編程效率。 Go語言語法靈活、簡潔、清晰、高效。它對的并發特性可以方便地用于多核處理器 和網絡開發,同時靈活新穎的類型系統可以方便地編寫模塊化的系統。go可以快速編譯, 同時具有垃圾內存自動回收功能,并且還支持運行時反射。Go是一個高效、靜態類型, 但是又具有解釋語言的動態類型特征的系統級語法。
P134 Go語言是由Google開發的一個開源項目,目的之一為了提高開發人員的編程效率。 Go語言語法靈活、簡潔、清晰、高效。它對的并發特性可以方便地用于多核處理器 和網絡開發,同時靈活新穎的類型系統可以方便地編寫模塊化的系統。go可以快速編譯, 同時具有垃圾內存自動回收功能,并且還支持運行時反射。Go是一個高效、靜態類型, 但是又具有解釋語言的動態類型特征的系統級語法。