-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Go語言入門經典

( 簡體 字)
作者:周家安類別:1. -> 程式設計 -> Go語言
譯者:
出版社:清華大學出版社Go語言入門經典 3dWoo書號: 54214
詢問書籍請說出此書號!

有庫存
NT售價: 495

出版日:3/1/2021
頁數:402
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302568490
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

經過十多年的發展,Go語言日漸完善,它是一門開源的且支持跨平臺的編程語言。與C、C++語言類似,Go語言也屬于強類型語言,源代碼需要編譯后才能運行,因此擁有較優的性能。從小工具到Web服務器的開發,Go語言都能勝任。
Go語言有以下特點:
(1) 代碼以包(Package)為單元,同一層目錄下只能定義一個包名。
(2) 一個可執行程序有且只能有一個命名為main的包,main包中必須存在main函數。當程序運行時,會查找main函數,并從該函數開始執行; 當main函數執行完畢(或跳出該函數)后,可執行程序退出。
(3) 代碼語句可以以“;”結尾,也可以省略。
(4) 左大括號(“{”)不能另起一行輸入,必須與前面的內容同處一行。例如:

func test() {

……

}

(5) if、for等關鍵字之后不需要小括號(C、C++等語言需要小括號)。
(6) 字符串常量可以使用“`”來避免轉義,例如:

`some content`

(7) 在函數(或方法)的調用語句中使用go關鍵字可以輕松完成異步編程。例如:

go test()

本書內容涵蓋了Go語言的各個知識點。從語法基礎、數據類型到較為復雜的反射技術、網絡編程,均有闡述。每個知識點都配有豐富的代碼示例,方便理解; 每一章的末尾附帶思考題,可幫助讀者回憶所學內容,加深印象。
編者希望通過本書幫助初學者快速了解Go語言,掌握最基本的編程方法和技術要點。閱讀本書后,讀者應該能夠運用Go語言編寫出一些像樣的程序。
由于編者水平有限,書中難免出現不完善的地方,歡迎廣大讀者及同仁不吝賜教,共同進步。
編者
2020年6月
內容簡介:

Go(Golang)語言在語法上與C、C++ 語言相似,是一門開源的編程語言,可用于編寫簡單的、實用的應
用程序。Go語言支持內存管理和垃圾回收(GC)機制,使用Go協程可以輕松實現并發計算。本書通過通
俗易懂的文字,著重講解Go語言編程的基礎知識,同時配有豐富的示例。
本書主要內容包括: 開發環境配置及語法基礎,代碼包(Package),內置運算符與數據類型,代碼流程
控制,函數式、接口與結構體,數組、切片與映射類型,反射技術,管理命令行參數,I/O、數據壓縮及文件操
作,加密與解密,網絡編程,Go協程。
作為入門教程,本書適合對編程感興趣并且希望通過自學來掌握Go語言基礎知識的讀者使用,或者
有其他編程語言基礎的讀者閱讀參考。同時,本書也可作為高等院校計算機及相關專業的教材。
目錄:

第1章準備工作
1.1安裝Go語言編譯器
1.2配置環境變量
1.3驗證Go語言編譯器的工作狀態
第2章語法基礎
2.1代碼結構
2.2main包與main函數
2.3Go語句
2.4代碼塊
2.5注釋
2.6使用Go語言編譯器
第3章運算符
3.1操作數
3.2算術運算符
3.2.1四則運算符
3.2.2取余運算符
3.2.3如何實現指數運算
3.2.4自增與自減運算符
3.3比較運算符
3.4邏輯運算符
3.5位運算符
3.5.1按位與
3.5.2按位或
3.5.3取反
3.5.4位移
3.5.5按位異或
3.5.6清除標志位
3.6成員運算符
3.7取地址運算符
3.8復合運算符
3.9運算符的優先級
第4章程序包管理
4.1package語句
4.2程序包的目錄結構
4.3導入語句
4.4初始化函數
4.5模塊
4.5.1go.mod文件的基本結構
4.5.2創建go.mod文件
4.5.3編輯go.mod文件
4.5.4使用本地模塊
4.6成員的可訪問性
第5章變量與常量
5.1變量的初始化
5.2組合賦值
5.3匿名變量
5.4常量
5.5批量聲明
5.6變量的作用域
5.7變量的默認值
第6章基礎類型
6.1字符與字符串
6.1.1rune類型
6.1.2string類型
6.2數值類型
6.2.1示例:獲取數值類型占用的內存大小
6.2.2整數常量的表示方式
6.2.3科學記數法
6.2.4復數
6.3日期與時間
6.3.1Month類型
6.3.2Weekday類型
6.3.3Duration類型
6.3.4Time類型
6.3.5Sleep函數
6.3.6Timer類型
6.4指針
6.4.1何時使用指針類型
6.4.2new函數
6.5iota常量
第7章函數
7.1函數的定義
7.2調用函數
7.3return語句
7.4多個返回值
7.5可變個數的參數
7.6匿名函數
7.7將函數作為參數傳遞
第8章流程控制
8.1順序執行
8.2if語句
8.3switch語句
8.3.1基于表達式構建的switch語句
8.3.2基于類型構建的switch語句
8.3.3fallthrough語句
8.4for語句
8.4.1僅帶條件子句的for語句
8.4.2帶三個子句的for語句
8.4.3枚舉集合元素語句
8.4.4continue與break語句
8.5代碼跳轉
8.5.1代碼標簽與goto語句
8.5.2break、continue語句與代碼跳轉
第9章接口與結構體
9.1自定義類型
9.2結構體
9.2.1結構體的定義
9.2.2結構體的實例化
9.2.3方法
9.3接口
9.3.1接口的定義
9.3.2接口的實現
9.3.3空接口——interface{}
9.3.4接口與函數
9.4類型嵌套
9.5類型斷言
第10章數組與切片
10.1數組
10.1.1數組的初始化
10.1.2訪問數組元素
10.1.3*〔n〕T與〔n〕*T的區別
10.1.4多維數組
10.2切片
10.2.1創建切片實例
10.2.2添加和刪除元素
第11章映射與鏈表
11.1映射
11.1.1映射對象的初始化
11.1.2訪問映射對象的元素
11.1.3檢查key的存在性
11.2雙向鏈表
11.2.1與雙向鏈表有關的API
11.2.2創建鏈表實例
11.2.3添加和刪除元素
11.2.4移動元素
11.2.5枚舉鏈表元素
11.3環形鏈表
11.3.1與環形鏈表有關的API
11.3.2使用環形鏈表
11.3.3滾動環形鏈表
11.3.4鏈接兩個環形鏈表
第12章反射
12.1關鍵API
12.2獲取類型信息
12.2.1類型分辨
12.2.2枚舉結構體類型的方法列表
12.2.3枚舉結構體類型的字段列表
12.2.4查找嵌套結構體的字段成員
12.2.5獲取函數的參數信息
12.2.6獲取通道類型的信息
12.2.7判斷類型是否實現了某個接口
12.3Value與對象的值
12.3.1修改對象的值
12.3.2讀寫結構體實例的字段
12.3.3更新數組/切片的元素
12.3.4調用函數
12.3.5調用方法
12.3.6讀寫映射類型的元素
12.4動態構建類型
12.4.1New函數
12.4.2創建數組類型
12.4.3創建結構體類型
12.4.4動態創建和調用函數
12.4.5生成通用函數體
12.5結構體的Tag
第13章字符串處理
13.1打印文本
13.2格式化輸出
13.2.1格式化整數值
13.2.2格式化浮點數值
13.2.3格式化字符串
13.2.4格式化布爾類型的值
13.2.5%T與%v格式控制符
13.2.6輸出包含前綴的整數值
13.2.7設置輸出內容的寬度
13.2.8控制浮點數的精度
13.2.9參數索引
13.2.10通過參數來控制文本的寬度和精度
13.3讀取輸入文本
13.3.1讀取鍵盤輸入的內容
13.3.2從文件中讀入文本
13.3.3以特定的格式讀取文本
13.4實現Stringer接口
13.5連接字符串
13.6替換字符串
13.7拆分字符串
13.8查找子字符串
13.8.1查找前綴與后綴
13.8.2查找子字符串的位置
13.9修剪字符串
13.9.1去除前綴和后綴
13.9.2去除字符串首尾的空格
13.9.3修剪指定的字符
13.10重復字符串
13.11字符串與數值之間的轉換
13.12切換大小寫
13.13使用Builder構建字符串
第14章常用數學函數
14.1求絕對值
14.2最大值與最小值
14.3三角函數與反三角函數
14.4冪運算
14.5開平方/立方根
14.6大型數值
14.6.1大型整數值之間的運算
14.6.2階乘運算
14.6.3使用大型浮點數值
14.7隨機數
14.7.1生成隨機浮點數
14.7.2生成隨機整數
14.7.3設置隨機數種子
14.7.4生成隨機全排列
14.7.5“洗牌”程序
14.7.6生成隨機字節序列
第15章排序
15.1基本排序函數
15.2實現遞減排序
15.3按字符串的長度排序
15.4Interface接口
第16章輸入與輸出
16.1簡單的內存緩沖區
16.2與輸入/輸出有關的接口類型
16.2.1實現讀寫功能
16.2.2嵌套封裝
16.3Buffer類型
16.4Copy函數
16.5MultiReader函數和MultiWriter函數
16.6SectionReader
第17章文件與目錄
17.1文件操作
17.1.1Create函數與Open函數
17.1.2重命名文件
17.1.3獲取文件信息
17.1.4OpenFile函數
17.2創建和刪除目錄
17.3硬鏈接與符號鏈接
17.3.1硬鏈接
17.3.2符號鏈接
17.4WriteFile函數與ReadFile函數
17.5臨時文件
17.6更改程序的工作目錄
第18章加密與解密
18.1Base64的編碼與解碼
18.1.1內置Base64編碼方案
18.1.2基于流的編碼與解碼
18.1.3自定義字符映射表
18.2DES與AES算法
18.2.1Block接口
18.2.2BlockMode模式
18.2.3基于流的加密與解密
18.3哈希算法
18.3.1hash.Hash接口
18.3.2使用crypto子包中的哈希API
18.3.3HMAC算法
18.4RSA算法
18.4.1生成密鑰
18.4.2加密和解密
18.4.3存儲密鑰
18.5PEM編碼
18.5.1編碼與解碼
18.5.2解碼后的保留數據
18.5.3消息頭
第19章命令行參數
19.1os.Args變量
19.2命令行參數分析API——flag包
19.2.1命令行參數與變量的綁定
19.2.2Value接口
第20章數據壓縮
20.1標準庫對壓縮算法的支持
20.2Gzip壓縮算法
20.2.1Gzip基本用法
20.2.2壓縮多個文件
20.2.3解壓多個文件
20.3DEFLATE算法
20.4自定義的索引字典
20.5Zip文檔
20.5.1從Zip文檔中讀取文件
20.5.2在內存中讀寫Zip文檔
20.5.3注冊壓縮算法
20.6Tar文檔
第21章協程
21.1啟動Go協程
21.2通道
21.2.1實例化通道
21.2.2數據緩沖
21.2.3單向通道
21.2.4通道與select語句
21.3互斥鎖
21.4WaitGroup類型
第22章網絡編程
22.1枚舉本地計算機上的網絡接口
22.2Socket通信
22.2.1TCP示例:文件傳輸
22.2.2UDP示例:文本傳輸
22.3HTTP客戶端
22.3.1發送GET與POST請求
22.3.2發送自定義HTTP頭
22.4HTTP服務器
22.4.1創建HTTP服務器
22.4.2實現Handler接口
22.4.3ServeMux類型
22.4.4封裝函數
22.4.5讀取URL參數
22.4.6獲取客戶端提交的表單數據
22.4.7讀取客戶端上傳的文件
22.5CGI編程
22.5.1準備工作
22.5.2示例:一個簡單的CGI程序
22.5.3使用cgi包
22.5.4在子進程中獲取Request對象
附錄A常用API與程序包對照表
附錄BGo語言代碼編輯工具使用說明
序: