Go 開發編程實戰 图灵原创:Go并发编程实战

郝林

  • 出版商: 人民郵電
  • 出版日期: 2015-01-01
  • 定價: $534
  • 售價: 8.5$454
  • 語言: 簡體中文
  • 頁數: 558
  • 裝訂: 平裝
  • ISBN: 7115373981
  • ISBN-13: 9787115373984
  • 相關分類: Go 程式語言
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

商品描述

<內容簡介>

郝林的這本《Go併發編程實戰》全面介紹了Go語言的特點、安裝部署環境、工程規範、工具鏈、語言語法、併發編程模型以及在多個編程實戰中的應用,重點闡述了Go語言併發編程模型和機制。本書共分為四個部分,介紹了Go語言編程環境搭建、Go語言基礎編程、Go語言併發編程方法及其原理,以及使用Go語言開發的應用系統的案例講解。
    本書適用於有一定電腦編程基礎的從業者以及對Go語言編程感興趣的愛好者,非常適合作為Go語言編程進階教程。

<目錄>

第一部分  Go語言的世界
第1章  初識Go語言
  1.1  Go語言特性一瞥
  1.2  Go語言的優劣
  1.3  怎樣學習Go語言
  1.4  本章小結
第2章  Go語言環境搭建
  2.1  安裝和設置
    2.1.1  Linux
    2.1.2  Windows
  2.2  工程結構
    2.2.1  工作區
    2.2.2  GOPATH
    2.2.3  源碼文件
    2.2.4  代碼包
  2.3  標準命令概述
  2.4  本章小結
第二部分  編程基礎
第3章  詞法與數據類型
  3.1  基本詞法
    3.1.1  標識符
    3.1.2  關鍵字
    3.1.3  字面量
    3.1.4  類型
    3.1.5  操作符
    3.1.6  表達式
  3.2  數據類型
    3.2.1  基本數據類型
    3.2.2  數組
    3.2.3  切片
    3.2.4  字典
    3.2.5  函數和方法
    3.2.6  接口
    3.2.7  結構體
    3.2.8  指針
    3.2.9  數據初始化
  3.3  數據的使用
    3.3.1  賦值語句
    3.3.2  常量與變量
    3.3.3  可比性與有序性
    3.3.4  類型轉換
    3.3.5  內建函數
  3.4  本章小結
第4章  流程控制方法
  4.1  基本流程控制
    4.1.1  代碼塊和作用域
    4.1.2  if語句
    4.1.3  switch語句
    4.1.4  for語句
    4.1.5  goto語句
  4.2  defer語句
  4.3  異常處理
    4.3.1  error
    4.3.2  panic和recover
  4.4  實戰演練——Set
  4.5  實戰演練——Ordered Map
  4.6  本章小結
第5章  程序測試和文檔
  5.1  程序測試
    5.1.1  功能測試
    5.1.2  基準測試
    5.1.3  樣本測試
    5.1.4  測試運行記錄
    5.1.5  測試覆蓋率
  5.2  程序文檔
  5.3  本章小結
第三部分  併發編程
第6章  併發編程綜述
  6.1  併發編程基礎
    6.1.1  串行程序與併發程序
    6.1.2  併發程序與並行程序
    6.1.3  併發程序與併發系統
    6.1.4  併發程序的不確定性
    6.1.5  併發程序內部的交互
  6.2  多進程編程
    6.2.1  進程
    6.2.2  關於同步
    6.2.3  管道
    6.2.4  信號
    6.2.5  Socket
  6.3  多線程編程
    6.3.1  線程
    6.3.2  線程的同步
  6.4  多線程與多進程
  6.5  多核時代的併發編程
  6.6  Go語言的併發編程
    6.6.1  線程實現模型
    6.6.2  調度器
    6.6.3  更多的細節
  6.7  本章小結
第7章  Goroutine和Channel
  7.1  Goroutine的使用
    7.1.1  go語句與Goroutine
    7.1.2  Goroutine的運作過程
    7.1.3  runtime包與Goroutine
    7.1.4  Happens Before
  7.2  Channel
    7.2.1  Channel是什麼
    7.2.2  單向Channel
    7.2.3  for語句與Channel
    7.2.4  select語句
    7.2.5  非緩衝的Channel
    7.2.6  time包與Channel
  7.3  實戰演練——載荷發生器
    7.3.1  參數和結果
    7.3.2  基本結構
    7.3.3  初始化
    7.3.4  啟動和停止
  7.3.5  調用器和功能測試
  7.4  本章小結
第8章  同步
  8.1  鎖的使用
  8.2  條件變量
  8.3  原子操作
  8.4  只會執行一次
  8.5  WaitGroup
  8.6  臨時對象池
  8.7  實戰演練——Concurrent Map
  8.8  本章小結
第四部分  編程實戰
第9章  一個網絡爬蟲框架的設計和實現
  9.1  網絡爬蟲與框架
  9.2  功能需求和分析
  9.3  總體設計
  9.4  詳細設計
    9.4.1  基本數據結構
    9.4.2  接口的設計
  9.5  中間件的實現
    9.5.1  通道管理器
    9.5.2  實體池
    9.5.3  停止信號
    9.5.4  ID生成器
  9.6  處理模塊的實現
    9.6.1  網頁下載器
    9.6.2  分析器
    9.6.3  條目處理管道
  9.7  調度器的實現
    9.7.1  基本結構
    9.7.2  主要的函數和方法
    9.7.3  請求緩存
    9.7.4  摘要信息的類型
  9.8  一個使用演示
    9.8.1  再看調度器參數
    9.8.2  開啟調度器
    9.8.3  調度器監控函數
  9.9  當前的不足和解決思路
  9.10  本章小結
附錄  Go語言的學習資源